首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

一个符号的有关问题

2012-02-12 
一个符号的问题下面这段代码是关于顺序表的,其中构造函数的写法有点怪,两个冒号“::”是域运算符,一个冒号“:

一个符号的问题
下面这段代码是关于顺序表的,其中构造函数的写法有点怪,两个冒号“::”是域运算符,一个冒号“:”不知是什么?请高手指教,代码这样写不好吧?

const   int   maxlen=100;
typedef   int   DataType;

class   SeqList
{
    private:
                    DataType   Data[maxlen-1];        
                    int   Len;
    public:
                  SeqList(void);
                  ~SeqList(void);
};

SeqList::SeqList(void):Len(0){}

SeqList::~SeqList(void){
    return   Len;
}


[解决办法]
就是初始化列表时的语法
[解决办法]
那是在初始化列表,很简单的。
[解决办法]
初始化列表有时候是必要的,一些类的继承都必须要用的
[解决办法]
初始化列表

一般用来初始话一些成员变量

SeqList::SeqList(void):Len(0){}

如果len是内部变量(int , long, .....)

那就跟这个

SeqList::SeqList(void)
{
Len = 0;
}

效果一样

如果是Len是类,而且没提供默认构造函数的话,就只能用前面的方法


[解决办法]
初始化列表
《c++ Primer》第三版(潘爱民)(电力出版)587页有专门介绍。
[解决办法]
析构函数怎么能有返回值呢?上面写的有问题.........
[解决办法]
成员变量初始化列表
[解决办法]
查的书都没介绍这个?还是你没找到,应该是介绍类的时候顺便介绍的,如果真的没有那赶快扔了吧,买本好的

热点排行