Gente tengo un problema con los operadores de sobre carga. Y la verdad que no encuentro el error. No lo veo. A ver si me pueden ayudadr. El problema es que a la salida tengo la direccion de memoria... y no los valores de los puntos. Any idea?
class adpoint
{
private:
double m_imaginary;
double m_real;
public:
adpoint (double = 0.0,double = 0.0);
void set_real(double);
void set_imaginary(double);
double get_real() const;
double get_imaginary() const;
friend ostream& operator << (ostream &o, adpoint &p);
};
/////////////////////////////////////////////////////////////////
adpoint::adpoint(double r, double i)
{
set_real (r);
set_imaginary (i);
}
void adpoint::set_real(double r)
{
m_real = r;
}
void adpoint::set_imaginary(double i)
{
m_imaginary = i;
}
double adpoint::get_real() const
{
return m_real;
}
double adpoint::get_imaginary() const
{
return m_imaginary;
}
ostream& operator << (ostream &o, adpoint &p)
{
o << "(" << p.m_real << ", " << p.m_imaginary << ")";
return o;
}
////////////////////////////////////main////////////////////////
#include <iostream>
#include "adpoint.h"
using namespace std;
int main ()
{
adpoint *prueba = new adpoint (2,23);
cout << prueba->get_real() <<endl;
cout << prueba->get_imaginary()<<endl;
cout << "objeto prueba: " << prueba;
delete prueba;
cin.get();
}
SI ALGUIEN SABE CUAL ES MI ERROR??? SE LO AGRADESCO!! :p