loops and 条件语句
Kong Liangqian Lv6

三目运算符转换

1
factor = isPositive ? 1 : -1;

等价于

1
2
3
4
if (isPositive)
factor = 1
else
factor = -1

等价于

1
factor = isPositive * 2 - 1

最后这个是最快的,没有跳转只有计算

while

1
2
3
4
5
size_t num = 10
while (num >= 0) {
cout << num << endl
num--
}

会发现他会不停的打印,因为size_t的定义本身就是大于等于0,0减去1会得到最大的那个正整数

赋值

1
int m = (b = 8)

b = 8 也是一个表达式,他返回值为8,所以m = 8

 Comments