Bonjour,
Je débute dans la programmation C++ et pour m'entrainer un peu, j'ai voulu implementer la class string avec quelques fonctions.
J'ai quelques soucis avec la classe +.
Je sais que le problème vient surement du pointeur mais je n'arrive pas à le resoudre.
Mon constructeur est "imposé" avec un const char*.
Donc je voulais savoir si j'ai raté un truc et quelle est la meilleure solution pour avoir en sortie un string concatener. (je sais que c'est pas la meilleure solution, pour l'instant je veux juste avoir en retour un string concatener)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 MyString operator +(MyString a){ int al = a.length();//length() deja implementé int bl = this->length(); char * charRes = new char [al+bl+1]; for (int i = 0; i <= bl; i++) { charRes[i] = this->m_string[i]; } for (int i = bl+1; i <= bl+al+1; i++) { charRes[i] = a.m_string[i-(bl+1)]; } MyString res(charRes); return res ; }
Partager