问题:
在 Visual Studio 2015 中编译时遇到错误消息,指出“非标准语法;使用 '&' 创建指向成员的指针”。此错误与尝试在不使用正确的指针语法的情况下调用成员函数有关。
原因:
在 C 中,使用指向成员函数的指针来访问成员函数而不是直接。在非成员函数中使用成员函数时,必须在成员函数名称前添加 '&' 来指示指针。
解决方案:
解决方法出现此错误,请修改代码以在调用成员函数时使用正确的指针语法。以下是解决“player1Move”成员函数中的问题的方法:
<code class="cpp">void TicTacToe::player1Move(string coordX) // ERROR { cout << "Enter X: " << endl; cin >> coordX; _coordX = coordX; }</code>
上面的代码需要替换为:
<code class="cpp">void TicTacToe::player1Move(string coordX) { cout << "Enter X: " << endl; cin >> coordX; _coordX = coordX; }</code>
在 " 之前添加 '&'
附加说明:
当未显式调用成员函数时在对象实例上(作为面向对象编程中的方法),可以使用指向成员函数的指针来调用它。 C 中的“&”运算符用于创建指向成员函数的指针。此语法遵循 C 标准,并允许从非成员上下文正确访问成员函数。
以上是为什么我在 Visual Studio 2015 中收到'非标准语法;使用'&”创建指向成员的指针”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!