C++ - Operator overloading?
Hej eksperter,Jeg sidder og bakser med min egen stream klasse og tænkte at jeg ville overloade insertion operatoren: <<
Men det resulterer bare i en memory exception: Access violation
Jeg tjekkede så min streampos variabel, og så at dens adresse ændres ved andet kald til insertion operatoren: <<
i main funktionen?
Min Kode:
class Stream
{
public:
int * streampos;
char * charstream;
Stream(size_t capacity = 256)
{
charstream = new char[256];
streampos = new int[256];
};
~Stream()
{
delete[] charstream;
};
Stream& operator <<(char * p)
{
int i = 0;
while((int)*(p+i) != 0)
{
cout<< i << ": " << (int)(p+i) << " = " << *(p+i) << " :::: " << endl;
i++;
}
}
};
int main()
{
Stream stream;
stream << "HEJ" << "Med dig hvad laver du";
return 0;
}
Jeg takker på forhånd
/Magnus