gpt4 book ai didi

C++ 固定数量的 vector 大小作为类成员

转载 作者:搜寻专家 更新时间:2023-10-31 00:39:09 25 4
gpt4 key购买 nike

我有课

class clsNode
{
private:
vector<clsNode*>m_Daughters;

但是,这个 vector 将始终只包含 2 个 clsNode 指针。它不应该是动态 vector ,而是一个固定长度的数组,可以容纳 2 个指向 2 个 clsNode 的指针。

我试过了

vector<clsNode*>m_Daughters[2];

但这引发了很多编译器错误。

谁能告诉我如何正确地做到这一点?

最佳答案

这个定义有问题

vector<clsNode*> m_Daughters[2];

它使 m_Daughters作为两个 vector<clsNode*> 的数组这与您的目的相去甚远。

要设置大小,可以使用其constructor

class clsNode
{
vector<clsNode*> m_Daughters;
public:
clsNode() : m_Daughters(2)
{}
};

如果大小不变,可以使用 std::array :

class clsNode
{
array<clsNode*, 2> m_Daughters;
};

关于C++ 固定数量的 vector 大小作为类成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16762573/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com