相关疑难解决方法(0)

c ++结构是否有默认构造函数?

我写了以下代码片段:

void foo()
{
    struct _bar_ 
    {
        int a;
    } bar; 

    cout << "Value of a is " << bar.a;
}
Run Code Online (Sandbox Code Playgroud)

并用g ++ 4.2.1(Mac)编译它.输出为"a的值为0".

是否真的说c ++中的结构的数据成员默认是初始化的(与c相比)?或者观察到的结果是巧合吗?

我可以想象c ++中的结构有一个默认的构造函数(因为结构和类在c ++中几乎相同),这可以解释为什么bar的数据成员a初始化为零.

c++

38
推荐指数
2
解决办法
6万
查看次数

标签 统计

c++ ×1