poc*_*coa 1 c++ reference constants function
这是我的代码失败:
bool Table::win(const Card &card) {
for (int i = 0; i < cards.size(); i++)
if (card.getRank() == cards[i].getRank()) return true;
return false;
}
Run Code Online (Sandbox Code Playgroud)
错误信息是:将'const Card'作为'int Card :: getRank()的'this'参数传递,丢弃限定符.
当我得到卡的副本并将代码更改为此时,它可以正常工作:
bool Table::win(const Card &card) {
Card copyCard = card;
for (int i = 0; i < cards.size(); i++)
if (copyCard.getRank() == cards[i].getRank()) return true;
return false;
}
Run Code Online (Sandbox Code Playgroud)
有没有其他方法可以做到这一点?
Bjö*_*lex 12
是getRankconst方法吗?它应该被声明为":
int getRank( ) const;
Run Code Online (Sandbox Code Playgroud)
假设返回类型为int.
| 归档时间: |
|
| 查看次数: |
6052 次 |
| 最近记录: |