Guten Tag Community
Ich frage mich gerade ob es möglich ist, "[][]" als Operator zu überladen, der mir nachher einen "std::string" zurückgeben kann. Ich hab ein bisschen im internet gesucht, aber nichts gefunden. Aber auch nichts gefunden das es nicht möglich wäre.
Mein Vorhaben:
Ich besitze eine Datei in der eine Tabelle mit Meldungen abgelegt ist. Die hole ich mir, und kopier mittels Koordinaten die entsprechende Meldung, die ich an das Programm zurückgebe.
Die Klasse wird in etwa so aussehen.
Aufrufen würde ich das so
Danke
Freundliche Grüsse
exc-jdbi
Ich frage mich gerade ob es möglich ist, "[][]" als Operator zu überladen, der mir nachher einen "std::string" zurückgeben kann. Ich hab ein bisschen im internet gesucht, aber nichts gefunden. Aber auch nichts gefunden das es nicht möglich wäre.
Mein Vorhaben:
Ich besitze eine Datei in der eine Tabelle mit Meldungen abgelegt ist. Die hole ich mir, und kopier mittels Koordinaten die entsprechende Meldung, die ich an das Programm zurückgebe.
Die Klasse wird in etwa so aussehen.
Code:
class myClass{ private: int x,y,**piArr; void ErrorMessage(){ throw ("Arraydimension false"); } public: //Eigener Operator definieren mit Überladung //... aber wie? Ausshen etwa so string* opeartor[][](int iX,int iY){ //Tabelle aus der Datei holen //Die entsprechende Meldung mit x,y kopieren //Meldung ausgeben } /*Sowas geht problemlos int* operator[](int iX){ //... }*/ myClass(int iX,int iY){ //Initialisieren von x und y } ~myClass(){ //Array komplett Deleten (vorläufig) } }
Aufrufen würde ich das so
Code:
int x=2,y=3; std::string Msg=Arr[x][y]; //Eventuell später (Flag setzen) Arr[xx][yy] = Neue Zuweisung einer Meldung;
Freundliche Grüsse
exc-jdbi
Comment