比如说这个语句
t= a>b? a : b > c? t : c;
C++中的冒号是什么算法?
答案:2 悬赏:30
解决时间 2021-02-26 19:19
- 提问者网友:乏味沐染
- 2021-02-26 13:40
最佳答案
- 二级知识专家网友:我们只是兮以城空
- 2021-02-26 14:27
三元运算符
a>b? a : b > c? t : c;
这个给你分解一下
t= a>b?( a) :( b > c? t : c);
也就是a>b为 true ,则t = a; false 则 t = ( b > c? t : c);
条件运算符 (?:) 根据布尔型表达式的值返回两个值中的一个
如果条件为 true,则计算第一表达式并以它的计算结果为准;如果为 false,则计算第二表达式并以它的计算结果为准。只计算两个表达式中的一个。
使用条件运算符,可以更简洁、雅观地表达那些否则可能要求 if-else 结构的计算
a>b? a : b > c? t : c;
这个给你分解一下
t= a>b?( a) :( b > c? t : c);
也就是a>b为 true ,则t = a; false 则 t = ( b > c? t : c);
条件运算符 (?:) 根据布尔型表达式的值返回两个值中的一个
如果条件为 true,则计算第一表达式并以它的计算结果为准;如果为 false,则计算第二表达式并以它的计算结果为准。只计算两个表达式中的一个。
使用条件运算符,可以更简洁、雅观地表达那些否则可能要求 if-else 结构的计算
全部回答
- 1楼网友:疯山鬼
- 2021-02-26 15:34
c++中冒号的使用有很多种,包括:
一、单冒号:
1 表示结构内位域的定义。
2 构造函数后面的冒号起分割作用,是类给成员变量赋值的方法,初始化列表,更适用于成员变量的常量const型。
3 public:和private:后面的冒号,表示后面定义的所有成员都是公有或私有的,直到下一个"public:”或"private:”出现为止。"private:"为默认处理。
4 类名冒号后面的是用来定义类的继承。
5 三目运算符 ?:运算。
6 用于程序标记。
7 switch语句中case或default后。
8 汇编指令模板。
9 字符或字符串常量使用。
二、双冒号,即::
1 作用域符号,用于类后或名空间后。
2 全局作用域符号:当全局变量在局部函数中与其中某个变量重名,那么就可以用::来区分。
3 c++里的“作用域分解运算符”。比如声明了一个类a,类a里声明了一个成员函数voidf(),但没有在类的声明里给出f的定义,那么在类外定义f时,就要写成voida::f(),表示这个f()函数是类a的成员函数。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯