【发布时间】:2019-03-04 22:53:33
【问题描述】:
问题:
- 我想知道这个三元运算符的解释是否有效。
var = (条件) ?条件一设置值:条件二的设置值;
如果条件是某物,那么变量的值就是某物。如果不是,价值会有所不同。基本上根据条件为变量分配一个值。这个解释有效吗?如果我理解正确,我需要知道这一点。
代码:
#include <iostream>
bool maxEntries()
{
int entries = 11;
bool users = (entries > 10) ? true : false;
return users;
}
int main(int argc, const char* argv[])
{
if(maxEntries())
{
std::cout << "Entries are greater than 10." << std::endl;
} else {
std::cout << "Entries are less than 10." << std::endl;
}
return 0;
}
.
【问题讨论】:
-
我会说“return value if condition....”或“result of ternary expression if condition...”而不是“设置”,但这听起来不错……当您插入值并对其进行测试时,您是否发现您的解释是正确的?
-
bool users = (entries > 10) ? true : false;的另一种说法是bool users = entries > 10;
标签: c++ operators conditional-statements