Heim > Artikel > Backend-Entwicklung > Warum erfordert Visual Studio 2015 \"&\", um einen Zeiger auf eine Mitgliedsfunktion zu erstellen?
Beim Versuch, auf eine Mitgliedsfunktion in zuzugreifen C ohne Verwendung der Funktionsaufrufsyntax tritt in Visual Studio 2015 ein Fehler auf: „Nicht standardmäßige Syntax; verwenden Sie ‚&‘, um einen Zeiger auf ein Mitglied zu erstellen.“
In Visual Studio Nicht-Member-Funktionen können in Ausdrücken verwendet werden, ohne die Funktionsaufrufsyntax zu verwenden. Für Mitgliedsfunktionen ist dies jedoch nicht zulässig. Um einen Zeiger auf eine Mitgliedsfunktion zu erhalten, muss der Operator „&“ verwendet werden.
Die Lösung des Fehlers besteht darin, dem problematischen Namen der Mitgliedsfunktion das Präfix „&“ voranzustellen. '-Operator, der einen Zeiger auf die Memberfunktion erstellt. Auf diese Weise kann die Funktion in Ausdrücken ohne die Funktionsaufrufsyntax verwendet werden.
Betrachten Sie die folgende Klassendefinition:
<code class="cpp">class TicTacToe { public: void player1Move(string coordX); };</code>
Um auf das Mitglied „player1Move“ zuzugreifen Funktion ohne Verwendung der Funktionsaufrufsyntax verwenden Sie den folgenden Zeiger auf Member:
<code class="cpp">TicTacToe::&player1Move;</code>
Dieser Zeiger auf Member kann jetzt in Ausdrücken verwendet werden, ohne die Funktion explizit aufzurufen:
<code class="cpp">TicTacToe Board; (Board.*player1Move)("some_coordinate");</code>
By Mithilfe des Operators „&“ kann Visual Studio die Absicht korrekt interpretieren und den nicht standardmäßigen Syntaxfehler vermeiden.
Das obige ist der detaillierte Inhalt vonWarum erfordert Visual Studio 2015 \"&\", um einen Zeiger auf eine Mitgliedsfunktion zu erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!