C++对象数组初始化



  • 写了一个类,类名叫IB,构造函数需要传入一个可变的量,想创建一个对象数组:

    IB myIB[3]=            //创建了一个含有3个元素的对象数组
         {
                IB(1),
                IB(2),
                IB(3)
         };
    

    但是实际上这个对象数组维度很大,因此想通过循环初始化:

    IB myIB[3]=           
         {
                for(int i=0; i<3; i++)
                {
                        IB(i+1);//循环初始化
                }
         };
    

    但第二种方法不行。。。有啥方法能够简洁地初始化对象数组?



  • 找到了一个方法
    用动态对象数组

    IB **myIB=new IB *[3];
    for(int i=0;i<3;i++)
    {
            myIB[i]=new IB(i+1);
    }
    

    注意最后delete。


Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2