Bon j'ai a moitie resolu mon pb.Deja j'ai appris que je ne pouvais pas utiliser des << pour remplir une string. Soit!
J'ai donc mis directement la concatenation dans les arguments de mes fonctions, sans passer par une string internediaire.
En effet dans mon catch, je dois appeler une fonction de trace et une fonction qui throw une exception:
Code :
- catch(MySQLException &e)
- {
- myTrace(myCode,"SQL Error - Error code:" << e.GetOrigin()
- << " Code:" << e.GetCode()
- << " SubCode:" << e.GetSubCode()
- << " Specific Code:" << e.GetSpecificCode());
- myException("SQL Error - Error code:" << e.GetOrigin()
- << " Code:" << e.GetCode()
- << " SubCode:" << e.GetSubCode()
- << " Specific Code:" << e.GetSpecificCode()),code);
- }
|
Bon comme vous le voyez ma 1ere fonction prend un entier(int) et une string et la 2e prend une string et un entier. Pour la premiere la concatenation passe tres bien.
Le pb vient de la seconde ou je me prends encore cette erreur de compil:
error C2296: '<<' : illegal, left operand has type 'const char [42]'
Je crois que ca vient du fait que je passe un argument apres un argument qui contient une suite de << mais je ne vois pas comment resoudre ce pb...
Une solution?
Merci beaucoup d'avance!