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

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

我必须为此应用程序使用原始指针,我想知道如何nullptr在构造函数中设置所有 26 个指针?我是否必须循环next并单独设置每个人,还是有另一种更快的方法来做到这一点?

回答

您可以执行值初始化。

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

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

因此,数组的所有元素都将被初始化为空指针。


以上是如何在构造函数中将指针数组全部设置为nullptrs?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>