当前位置: 首页 > 编程技术 > 正文

类成员指针数组的初始化

    类成员的初始化(这里我们讨论的不是默认的构造函数的初始化)使用的是构造函数,对于成员的初始化较简单,比如:

CTest test(true,false); //假设存在一个类CTest

     类成员的初始化指在对成员的声明是就可以对其初始化,比如上面的方法,这也是比较常见的一种方法,

    但是如果是类成员指针或者类成员指针数组呢,在或者是动态申请的类成员指针数组呢。比如下面的例子:

int nFoxNum;cin>>nFoxNum;CFox * Fox = new CFox[nFoxNum];CWolf * Wolf = new CWolf;

       上面分别有两个例子,第一个是确定类成员的个数,也就是动态申请类成员指针数组,第二个是一个类成员指针,

      对于类成员指针,我们不能在声明就初始化,并且不能调用构造函数,因为构造函数不能被显式调用,那么怎么初始化呢:

       对于指针数组或者是类成员指针,使用下面的方式初始化:

int nFoxNum;cin>>nFoxNum;CFox * Fox = new CFox[nFoxNum];CWolf * Wolf = new CWolf;for(i =0;i<nFoxNum;i++){     //类成员数组的初始化    (*(Fox+i))=CFox(false,nFoxBeginID+i);//通过类名产生临时变量来初始化}

*Wolf = CWolf(true,false);

    这样就是实现了对类成员指针数组和类成员数组的初始化



本文固定链接: http://kuaile.in/archives/1057 | 蒲公英的博客

该日志由 蒲公英 于2012年06月10日发表在 编程技术 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 类成员指针数组的初始化 | 蒲公英的博客
关键字:

类成员指针数组的初始化:等您坐沙发呢!

发表评论


You must enable javascript to see captcha here!

快捷键:Ctrl+Enter