[C++] problème avec des opérateurs surchargés

problème avec des opérateurs surchargés [C++] - Programmation

Marsh Posté le 11-11-2001 à 11:24:57    

Voila j'ai une classe String toute bête, et je voudrais surcharger les opérateur char* () et []
Malheureusement, si j'appelle mastring[2], ce con de VC++ ne sait pas quel opérateur choisir !!! J'aurais donc besoin d'un moyen de le persuader que ça serait débile de transormer mastring en ptr alors qu'il est évident qu'on veut utiliser l'opérateur [] !!!

Reply

Marsh Posté le 11-11-2001 à 11:24:57   

Reply

Marsh Posté le 11-11-2001 à 11:28:18    

Sans code, on comprend rien.

Reply

Marsh Posté le 11-11-2001 à 11:40:43    

ok je développe :
class String
    {
    operator char [] (word indice);
    operator char* ();
    };
 
String mastring;
char c = mastring[2];  //marche pas, VC++ ne sait pas quel opérateur utiliser ...

Reply

Marsh Posté le 11-11-2001 à 11:43:49    

operator char [] ?
C'est plutôt char operator[]

Reply

Marsh Posté le 11-11-2001 à 11:44:46    

autant pour moi, erreur d'écriture

Reply

Marsh Posté le 11-11-2001 à 11:58:44    

Remplace word par int dans la méthode operator[] ou bien écris mastring[(word)2]

Reply

Marsh Posté le 11-11-2001 à 15:03:48    

ça marche !!! c'est excellent, je n'y aurait même pas pensé tellement c'est tout con ...
merci mille fois :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed