Dev - C++ - Donde esta el error?

 
Vista:

Donde esta el error?

Publicado por Danix (2 intervenciones) el 14/10/2005 15:45:17
hola, les cuanto , este codigo que voy a pegar a continuacion supuestamente esta bien pero no puedo encontrar porque me da el error en la asigancion , si esta sobrecargado para obj de esa clase.

#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <fstream.h>

class punto
{
private:
int x;
int y;
public:
punto();
punto(int,int);
int getx();
int gety();
punto& operator = (const punto);
friend ostream& operator << (ostream&, const punto&);
~punto();
};

void main()
{ punto p1(),p2(2,3);
p1=p2; //aca me dice "Lvalue required"
cout<<p1;
getch();
}

punto::punto()
{
x=0;y=0;

}

punto::punto(int a,int b)
{
x=a;y=b;

}
punto& punto::operator = (const punto p)
{
x=p.getx();
y=p.gety();

return *this;
}
ostream& operator << (ostream& o , const punto& p)
{
o<<p.getx();
o<<p.gety();
return o;

}

int punto::getx()
{
return x;
}
int punto::gety()
{
return y;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Donde esta el error?

Publicado por Santiago (1 intervención) el 22/10/2005 06:08:14
Lo que pasa es que declaraste p1 como una funcion que devolvia un punto y no tomaba valores.
Para corregir el error, lo que puedes hacer es poner

void main()
{
punto p1,p2(2,3);
p1=p2; //aca me dice "Lvalue required"
cout<<p1;
getch();
}

mirá que el único cambio que hice fue el de quitar los parentesis de p1. Ah y otra cosa, cuando lo compilé le quite todos los < y los cambié por <
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Donde esta el error?

Publicado por Danix (2 intervenciones) el 24/10/2005 17:26:27
Muchisimas gracias , lo unico que me di cuenta a los 4 segundos de mandar el codigo , !que verguenza!, pero igualmente muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar