什么是c ++ / c ++ 11中的bool(),int()和double()?

时间:2014-12-13 21:32:53

标签: c++ c++11

c ++ / c ++ 11中的bool()int()double()是什么?它们是{c}或c ++ 11标准中的true00.0吗?

2 个答案:

答案 0 :(得分:3)

T() ia是一个值为T的值初始化的prvalue,因为C ++ 03引入了值初始化。

falsebool,算术为0,指针类型为nullptr

答案 1 :(得分:3)

引用C ++ 11 FD,[expr.type.conv] / 2:

  

表达式T(),其中T简单类型说明符或    typename-specifier 表示非数组完整对象类型或   (可能是cv-qualified)void类型,创建指定的prvalue   type,,其值是由值初始化(8.5)生成的   T 类型的对象;没有为void()情况进行初始化。

值初始化意味着标量的零初始化。