【发布时间】:2019-12-11 21:39:24
【问题描述】:
初始化的返回值是多少?例如: 在以下代码中;
#include<iostream>
int main()
{
int age = 30; //does this statement return (thus; yield) anything?
while(int i = 0){ //a similar statement (expression) used here in this condition
std::cout<<"OK";
}
return 0;
}
-
int age = 27;语句返回什么? - 通常的赋值运算符含义是否适用于初始化时,返回赋值运算符的左操作数?
我想知道这一点的原因是,当我们查看上面的条件语句时,我们会看到一个类似的变量初始化,该变量用作条件。我知道返回的任何值都会转换为 bool 类型。
注意:我并不想在 while 语句的条件下将 i 与 0 进行比较。
【问题讨论】:
-
@RPDF OP 明确提到这不是问题,问题是其他问题
-
小心术语。 函数返回一个值,带有一个或多个
return语句。 表达式有一个值。它不会“返回”任何东西。 -
在
int age = 30;中,=,尽管它看起来,并不是一个任务。这是一个初始化。在 C++ 中,该声明也可以写成int age{30};,具有相同的含义。对于具有构造函数的对象类型,它有点复杂,但是,=不是赋值。
标签: c++ initialization