创建对象向量时出错 我和一些同学在C++中进行了一个分析CLOS网络性能的项目。我们遇到了以下问题: static const int dim = 3; packet **pack; pack = new packet*[dim]; for (int i=0; i<dim; i++) pack[i]=new packet(); static const int dim=3; 包**包; 包装=新包装*[dim]; 对于(int i=0;i

创建对象向量时出错 我和一些同学在C++中进行了一个分析CLOS网络性能的项目。我们遇到了以下问题: static const int dim = 3; packet **pack; pack = new packet*[dim]; for (int i=0; i<dim; i++) pack[i]=new packet(); static const int dim=3; 包**包; 包装=新包装*[dim]; 对于(int i=0;i,c++,object,vector,C++,Object,Vector,我从编译器错误中看到的第一件明显的事情,它似乎无法将数据包识别为一种类型 接下来让我震惊的是,这些错误是从一个名为“event.h”的文件生成的,而不是编译单元。您的代码是否在头文件中? 该代码不属于一个函数,但应该位于编译单元中。我们看不到它周围的上下文。它属于函数,而不是类定义 类“packet”也需要是一个完整的类型,而不是前向声明的类型 但是,如果您不打算拥有对象向量,即向量 大概,packet是在标头中定义的。示例中包含代码的编译单元需要包含该标头。使用此代码您试图实现什么?如果您有多

我从编译器错误中看到的第一件明显的事情,它似乎无法将
数据包
识别为一种类型

接下来让我震惊的是,这些错误是从一个名为“event.h”的文件生成的,而不是编译单元。您的代码是否在头文件中? 该代码不属于一个函数,但应该位于编译单元中。我们看不到它周围的上下文。它属于函数,而不是类定义

类“packet”也需要是一个完整的类型,而不是前向声明的类型

但是,如果您不打算拥有对象向量,即
向量


大概,
packet
是在标头中定义的。示例中包含代码的编译单元需要包含该标头。

使用此代码您试图实现什么?如果您有多个“*”在C++中,你做的是错误的。你使用C++ 11,使用智能指针,而不是原始指针。包是用这种方式创建的,类包{public:包();;是的,但是如果它是在头中定义的,那么编译单元是否包括该头?是的,它是:(我使用的是代码块,但是,如果知道上面的代码在头中是有用的?编译器错误指向名为“event.h”的文件是的,错误在头event.h中,其中包括packet.h文件头