Problem:
Während der Kompilierung in Visual Studio 2015 wird eine Fehlermeldung angezeigt, die besagt: „Nicht standardmäßige Syntax; verwenden Sie ‚&‘, um einen Zeiger auf ein Mitglied zu erstellen.“ Dieser Fehler bezieht sich auf den Versuch, eine Mitgliedsfunktion aufzurufen, ohne die richtige Zeigersyntax zu verwenden.
Ursache:
In C wird auf Mitgliedsfunktionen mithilfe von Zeigern auf Mitgliedsfunktionen zugegriffen statt direkt. Bei der Verwendung von Mitgliedsfunktionen innerhalb von Nicht-Mitgliedsfunktionen ist es wichtig, dem Namen der Mitgliedsfunktion ein „&“ voranzustellen, um den Zeiger anzugeben.
Lösung:
Auflösen Wenn dieser Fehler auftritt, ändern Sie den Code so, dass beim Aufrufen von Mitgliedsfunktionen die richtige Zeigersyntax verwendet wird. So können Sie das Problem in Ihrer Member-Funktion „player1Move“ beheben:
<code class="cpp">void TicTacToe::player1Move(string coordX) // ERROR { cout << "Enter X: " << endl; cin >> coordX; _coordX = coordX; }</code>
Der obige Code muss ersetzt werden durch:
<code class="cpp">void TicTacToe::player1Move(string coordX) { cout << "Enter X: " << endl; cin >> coordX; _coordX = coordX; }</code>
Durch Hinzufügen von „&“ vor dem „ Mit dem Funktionsnamen „player1Move“ erstellen Sie einen Zeiger auf die Mitgliedsfunktion, sodass Sie sie korrekt aufrufen können.
Zusätzliche Erklärung:
Wenn eine Mitgliedsfunktion nicht explizit aufgerufen wird Auf einer Objektinstanz (als Methode in der objektorientierten Programmierung) kann sie mithilfe eines Zeigers auf eine Mitgliedsfunktion aufgerufen werden. Der Operator „&“ in C wird verwendet, um einen Zeiger auf eine Mitgliedsfunktion zu erstellen. Diese Syntax entspricht dem C-Standard und ermöglicht den ordnungsgemäßen Zugriff auf Mitgliedsfunktionen aus Nicht-Mitgliedskontexten.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in Visual Studio 2015 den Fehler „Nicht standardmäßige Syntax; verwenden Sie \'&\', um einen Zeiger auf ein Mitglied zu erstellen'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!