2
A
回答
6
其ternary operator,相当于:
if (model == DHT11)
return 0;
else
return -40;
所以它无关的范围内进行检查。
三元运算符产生的值,也就是说,您也可以在分配中使用,如:
retval = model == DHT11 ? 0 : 40;
return retval;
0
0
如前所述,它被称为三元运算符。
三元运算符检查是否有错,如果是,则产生:
之前的值。如果它是假的,它会产生:
之后的值。
在这种情况下,它会检查model == DHT11
的计算结果是否为真,如果是,则返回0。如果model == DHT11
的计算结果为false,则为-40。然后将三元值的值赋予return
,退出该函数并返回0或-40。
其他例如:
std::string hi = "hi";
std::cout << (hi == "hi") ? "string hi contains \"hi\"." : "string hi does not contain \"hi\"." << "\n";
将打印:
string hi contains "hi".
常规语法:
bool ? value1 : value2
三元运算符是一样的if-else语句,压缩到一条线。
相关问题
- 1. 这个javascript语法是什么意思?
- 2. 这个Scala语法是什么意思(_ *)?
- 3. 这个C++语法是什么意思?
- 4. 这个python语法是什么意思?
- 5. 这个语法是什么意思?
- 6. 这个语法是什么意思? new {}
- 7. 这个#define语法是什么意思?
- 8. 这个语法是什么意思。 (:: *)
- 9. 这个“新”语法是什么意思?
- 10. 这个Java语法是什么意思?
- 11. 这个rails语法是什么意思?
- 12. jQuery - 这个语法是什么意思?
- 13. 这个语法是什么意思? (Prolog)
- 14. C++,这个语法是什么意思?
- 15. 这个PHP语法是什么意思?
- 16. 这个python语法是什么意思?
- 17. 这个切片是什么意思[:,:,0]?
- 18. 这个CSS(| =)是什么意思?这叫什么?
- 19. 这个JS语法是什么意思,什么是'长度'?
- 20. Javascript:这个语法是什么意思(0,functionName)(functionParemeter);
- 21. 这个javascript语法是什么意思? (0,_parseKey2.default)(东西)
- 22. 这ocaml语法是什么意思?
- 23. “::”语法是什么意思?
- 24. 为什么用WINAPI这个C++语法是什么意思?
- 25. 这个Perl语句是什么意思?
- 26. 这个MATLAB语句是什么意思?
- 27. 这个shell语句是什么意思?
- 28. 这个Javascript语句是什么意思?
- 29. 这个mysql语句是什么意思?
- 30. 这个Python语句是什么意思?
不要相信你的直觉。 – 101010
搜索三元运算 –
另请参阅:http://stackoverflow.com/questions/392932/how-do-i-use-the-conditional-operator – jaredk