小编Ale*_*ell的帖子

构造函数中私有成员初始化的差异(C++)

我已经离开C++一段时间了,我试图确定定义类的私有成员变量(如果有的话)的这两个默认构造函数初始化之间的区别.类定义位于头文件中,而实现位于单独的文件中.所有私有成员变量都需要初始化为"0"或无意义的值.

注意:

int data [MAX_SIZE]是一个固定大小的编译时数组.int used:是数组的索引跟踪器.

一般来说,我习惯于通过以下方式初始化成员:

 // Default Constructor
 IntSet::IntSet()
 {
    data[MAX_SIZE-1] = {0}
    used = 0;
 }
Run Code Online (Sandbox Code Playgroud)

我正在梳理一些遗留代码并找到完全不同的语法:

 // Default Constructor
 IntSet::IntSet() : used(0)
 {
    data[MAX_SIZE-1] = {0};
 }
Run Code Online (Sandbox Code Playgroud)

最终结果有区别吗?

c++ initialization default-constructor

1
推荐指数
1
解决办法
64
查看次数

标签 统计

c++ ×1

default-constructor ×1

initialization ×1