c++ - 在函数中传递 const 对象
问题描述
我试图将一个对象传递给一个函数,但将其声明为 const ,因此它只能被读取而不能被更改。抛出一个需要表达式的错误,我不确定为什么或如何修复它。
我有一个父类及其子类都具有相同的函数签名,但做不同的事情,他们都需要反对才能完成他们的任务。
我对 c++ 仍然很陌生,并且查看了该网站上的其他问题,但没有找到任何答案;
谢谢。
class Player{
char getMove(const Board& board){
char answer ='a';
// ...
return answer;
}
};
class Computer : public Player {
char getMove (const Board& board){
char answer = 'a';
// ...
return answer;
}
};
函数调用
int main(){
Player* player[2];
player[0] = new Player;
player[1] = new Computer;
char p0Move, p1Move
p0Move = player[0]->getMove(const board);
p1Move = player[1]->getMove(const board);
}
错误:播放器[0]->getMove 和播放器[1]->getMove 处的“预期表达式”
解决方案
这些行是问题所在:
p0Move = player[0]->getMove(const board);
p1Move = player[1]->getMove(const board);
你在这里不需要'const'。你想要的是:
p0Move = player[0]->getMove(board);
p1Move = player[1]->getMove(board);
推荐阅读
- android-studio - 有没有办法在不将应用上传到 Play 管理中心的情况下使用真实的 unitID 测试 adMob 广告?
- javascript - REACT JS:未处理的拒绝(TypeError):无法读取未定义的属性“数据”
- python - 在 Python 中将多个 Excel 文件附加到一个文件时出错
- linux - Informatica:配置域(错误 PCSF_46008。无法连接到域)
- shell - 如何在shell脚本中合并2个同名目录
- json - 如何使用 JOLT 转换组合两个数组
- python - 登录后重定向用户而不使用 LOGIN_REDIRECT_URL 但来自views.py
- r - R lang:连接两个表,但用指定表中的数据替换冲突列
- ios - 在 Swift 中解码 JSON 时出现“无法读取数据,因为它丢失了”错误
- mlflow - MLflow 部署可能性之间的差异