如何在构造函数中设置指针数组全部为空值?


class TrieNode {
public:
TrieNode() : next{new TrieNode *[26]} {}
TrieNode **next;
string word;
};

我必须为这个应用程序使用原始指针,我想知道如何在构造函数中设置所有26个指针到nullptr?我是否需要循环next并分别设置每个值或者有没有其他更快的方法?

可以执行值初始化。

  1. 如果T是数组类型,则数组的每个元素都是值初始化的;
  2. 否则,对象为零初始化。

零初始化的效果如下:

  • 如果T是标量类型,对象的初始值是显式转换为T的整型常数0。
class TrieNode {
public:
TrieNode() : next{new TrieNode *[26]()} {}
//                                      ^^  or use {} since C++11
TrieNode **next;
string word;
};

作为结果,数组的所有元素将被初始化为空指针。

最新更新