c++ - 成员引用基类型不是结构或 union

标签 c++ arrays pointers nodes

我在我的 .h 中声明了一个 MyNode 数组作为 MyNode **myArray;

然后在我的 .cpp 中,我有 myArray = new MyNode*[1];

每当我尝试调用 myArray.size()myArray.resize() 时,我都会收到错误消息:

成员引用基类型 'MyNode **' 不是结构或 union

知道我为什么会收到此错误吗?谢谢!

最佳答案

C++ 中的数组没有可以调用它们的方法

如果你想做这样的操作 - 然后使用像这样的容器:

std::vector<MyNode> myArray(1)

或者,如果您不想动态更改数组的大小:

std::array<MyNode, 12> myArray;

关于c++ - 成员引用基类型不是结构或 union ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20208652/

相关文章:

c - 为什么我的随机数组和排序程序不工作?

c - 在 C 中写入数组的数组并显示数组的数组中的单独实体

C - 堆上的缓冲区在 EXEC 后不会丢失,而是保存在堆栈上

c++ - 使用 Python.h 编译错误 gcc

c++ - 通过 CreateProcess 启动应用程序但似乎无法使用 PeekMessage?

arrays - 在 MATLAB 中,对于二维数组,如何获取首先迭代另一个维度的索引

c - 在 C 中使用指针的练习给出了不明确的输出

C++ 对象引用/访问

c++ - 在 C++ 并发中使用互斥量

c++ - 字符串声明