c++ - 布尔值,如果为假则重复某些功能
问题描述
这是我的第一篇文章; 抱歉任何格式错误。为什么不使用第二个 get_wager_amount() (程序终止),我应该如何解决这个问题?或任何使代码更好的东西将不胜感激。代码如下:
int get_bank_balance(){
cout << "Enter an initial bank balance (dollars): " << endl;
cin >> balance;
return balance;
}
int get_wager_amount(){
cout << "\nEnter a wager (dollars)" << endl;
cin >> wager;
}
bool is_valid_wager_amount(){
if(wager <= balance){
return true;
}
if(wager > balance){
cout << "Error: wager > balance. Try again" << endl;
return false;
}
}
int main()
{
get_bank_balance();
get_wager_amount();
is_valid_wager_amount();
if (is_valid_wager_amount == false){
get_wager_amount();
is_valid_wager_amount();
}
解决方案
is_valid_wager_amount();
if (is_valid_wager_amount == false)
正在调用is_valid_wager_amount
,丢弃结果,然后测试is_valid_wager_amount
函数的地址,看它是否为假。这不是特别有用。最新的编译器应该拒绝此代码。
反而给,
if (is_valid_wager_amount() == false){
试一试。这将调用该is_valid_wager_amount
函数并检查结果是否为假。
不相关:考虑将 替换为if
awhile
以重复询问,直到用户提供有效响应。
推荐阅读
- mysql - 在 Debian 10 上使用 Ansible 创建新数据库时收到 Python 错误
- javascript - 我们如何访问 Node.js 应用程序之外的内存?
- linux - 在内核 debians 中包含 objTools(linux-headers 和 linux-image)
- html - 页面背景未完全着色
- qt - 删除树项析构函数时未调用
- python-3.x - 我正在使用 SVR() 函数进行回归。我无法使用 #pso by #Pyswarm 优化它的参数
- javascript - 为什么下面的代码总是在立即数之前打印超时?
- r - 从 excel 导入日期以随时间推移作为样本绘制
- json - 如何为不同的附加程序配置不同的级别,但在 logback 中的相同记录器下
- node.js - TypeError:invNum.next 不是函数