Luc*_*ore 2 c++ language-lawyer
迂腐地说,是否x在以下代码中初始化?
int main()
{
int x;
}
Run Code Online (Sandbox Code Playgroud)
在8.5 Initializers [dcl.init](对于C++ 11)中有一些关于它的段落,但没有任何示例支持.
它正式默认初始化,这意味着对于ints,不执行初始化.
[dcl.init]/12(N3797)
如果没有为对象指定初始化程序,则默认初始化该对象; 如果未执行初始化,则具有自动或动态存储持续时间的对象具有不确定的值
[dcl.init]/7
到默认初始化的类型的对象
T是指:
if
T是(可能是cv限定的)类类型,默认构造函数为T[...];如果
T是数组类型,则每个元素都是默认初始化的;否则,不执行初始化.