Mein erstes Mal die Einstellung der Überlastung Operator [] für etwas Praktisches und ich lief in etwas, das ich noch nie gedacht. Ich versuche, eine benutzerdefinierte Array-ähnliche Klasse, die Zeiger hält (und bietet einige einzigartige Funktionen). Das Zurückgeben eines der Zeiger aus meiner Klasse mit dem Operator [] ist offensichtlich, aber ich stellte mir auch die Möglichkeit vor, die Zieladresse des Zeigers von außen zu ändern. Vielleicht überlege ich das, aber würde eine Zuweisung auf den Rückgabewert (wie Fisch [0] = lpHatAddress;) einen Fehler verursachen, weil der zurückgegebene Wert nur eine Adresse ist?überladene Operator [] für beide Zugriff und einen Wert (C++)
Die einzige Lösung, die ich in der Lage bin zu denken, ist Zeiger auf Zeiger zu speichern, und das wäre doppelt so viel Speicherplatz verbrauchen. übersehe ich etwas offensichtlich? Gibt es einen sauberen Weg, dies zu tun?
Zeigen Sie den Code Ihrer '[]' Überladung. Ich vertraue darauf, dass es einen Verweis auf ein Element zurückgibt. –
Dies ist fast der Grund, warum Referenzen erfunden wurden. –
@SethCarnegie Entschuldigung. Zu sagen, ich wäre rostig, wäre eine Untertreibung. : P – user980058