Bub325
Messages postés41Date d'inscriptiondimanche 9 février 2003StatutMembreDernière intervention28 avril 2010
-
25 mai 2003 à 15:46
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 2006
-
26 mai 2003 à 01:39
Salut, j'ai un problème dans le code suivant au niveau de l'allocation mémoire de tmp.a = new char... dans operator+, et je ne sait pas du tout pourquoi donc si qqn peut m'aider ce serais un grand plaisir (je me lance en c++ et je fait ça pour aprendre).
#include <stdiostr.h>
#include <string.h>
class string
{
char* a;
public:
string(char* chaine = NULL)
{
if (chaine)
{
a = new char [strlen(chaine)+1];
strcpy(a,chaine);
}
else a = NULL;
}
~string()
{
delete [] a;
}
char* operator() ()
{
return a;
}
string &operator= (const string &p)
{
delete [] a;
if (p.a != NULL)
{
a = new char [strlen(p.a)+1];
strcpy(a,p.a);
}
else a = p.a;