C++ 如何在(*.cpp)中定义结构,而不是在类中定义(*.h)

C++ 如何在(*.cpp)中定义结构,而不是在类中定义(*.h),c++,class,struct,C++,Class,Struct,我想从头文件中定义一个结构 以下是我在(*.h)中声明的内容 如何在(*.cpp)中更详细地定义结构顶点? 我尝试了好几次,但都失败了。这里的问题是您没有声明结构,而是完全定义了它。为了声明它,您需要去掉{} class MyVertex { public: struct Vertex; }; 完成此操作后,您将能够稍后在.h文件或.cpp中定义结构成员 struct MyVertex::Vertex { ... }; struct MyVertex::Vertex { .

我想从头文件中定义一个结构

以下是我在(*.h)中声明的内容

如何在(*.cpp)中更详细地定义结构顶点?
我尝试了好几次,但都失败了。

这里的问题是您没有声明
结构,而是完全定义了它。为了声明它,您需要去掉
{}

class MyVertex { 
public:
  struct Vertex;
};
完成此操作后,您将能够稍后在
.h
文件或
.cpp
中定义
结构
成员

struct MyVertex::Vertex { 
  ...
};
struct MyVertex::Vertex { 
  ...
};