C++11 复制构造函数不初始化基元数据类型 #包括 使用名称空间std; 福班 { 公众: INTA; }; int main() { 福福; Foo f1(f); cout

C++11 复制构造函数不初始化基元数据类型 #包括 使用名称空间std; 福班 { 公众: INTA; }; int main() { 福福; Foo f1(f); cout,c++11,C++11,未初始化的变量具有不确定的值,即内存中发生的任何值。0是可能的不确定值之一,以及任何其他值。Copy c-tor不初始化原始数据类型,只要您不显式声明它。 未初始化变量的值由属于此变量的RAM空间值决定,所以它可以是任何值。但更有可能的是,此RAM设置为0(可能在计算机重新启动后).您的第二个示例未编译。请显示真实代码。这不是因为重新启动。每当操作系统将内存分配给进程时,它都必须使用0填充内存,以便以前使用此物理内存的其他进程的敏感信息不会泄漏。 #include <iostream>

未初始化的变量具有不确定的值,即内存中发生的任何值。
0
是可能的不确定值之一,以及任何其他值。

Copy c-tor不初始化原始数据类型,只要您不显式声明它。
未初始化变量的值由属于此变量的RAM空间值决定,所以它可以是任何值。但更有可能的是,此RAM设置为0(可能在计算机重新启动后).

您的第二个示例未编译。请显示真实代码。这不是因为重新启动。每当操作系统将内存分配给进程时,它都必须使用
0
填充内存,以便以前使用此物理内存的其他进程的敏感信息不会泄漏。
#include <iostream>

using namespace std;

class Foo
{
public:
        int a;
};
int main()
{
        Foo f;
        Foo f1(f);
        cout<<f.a;
        return 0;
}
#include <iostream>

using namespace std;

class Foo
{
public:
        int a;
};
int main()
{
        Foo f;
        Foo f1(f);
        cout<<f.a<<f.b;
        return 0;
}