注册 登录
编程论坛 C++教室

c++11 里对象数组初始化

xiaodu000 发布于 2014-05-17 11:35, 508 次点击
#include<iostream>
#include<string>
using namespace std;
class S{
    private:
        int a;
    public:
        S()
        {
            cout<<"empty construction"<<endl;
        }
        S(int a=0)
        {
            cout<<"construction"<<endl;
        }
};
int main()
{
    S A[10] = {S(2),S(3)};
    return 0;
   
}
我现在建立一个对象数组,但是我只初始化了两个。
就有了编译错误。
只有本站会员才能查看附件,请 登录

8个剩下没声明的同样的错误,是c++11不允许这样做吗?还是我用的方法不对。我看见网上好多都是可以过的。求解。
2。    S b[10];
我在主函数里又加了S b[10].但是又告诉我这个=
只有本站会员才能查看附件,请 登录

求各位大神替我解下惑,
3 回复
#2
funyh2502014-05-17 12:45
s(int n=0):a(n){cout<<a<<endl;}

可以看a的值来判断
#3
funyh2502014-05-17 12:47
你的错误之处是有多个构造函数

只能一个
#4
xiaodu0002014-05-24 14:39
谢谢,问题已经解决!
1