C++ 如何声明在不同文件中定义的类类型的成员

C++ 如何声明在不同文件中定义的类类型的成员,c++,struct,member,C++,Struct,Member,我有一个头文件,其中定义了一个结构。我希望此结构的实例是在不同文件中定义的类的成员。如何操作?#在定义类的标头中包含包含结构的标头 Foo.h: struct Foo { }; B.h: #include "Foo.h" class Bar { Foo f; }; 是否希望该结构是另一种类型中的嵌套类?或者你想要一个结构实例作为另一种类型的数据成员?我想要一个结构实例作为另一种类型的数据成员那么Erik的答案是正确的。我建议读一本好的C++书!我已经编辑了你的问题来澄清它。谢谢!另外,我

我有一个头文件,其中定义了一个结构。我希望此结构的实例是在不同文件中定义的类的成员。如何操作?

#在定义类的标头中包含包含结构的标头

Foo.h:

struct Foo {
};
B.h:

#include "Foo.h"
class Bar {
  Foo f;
};

是否希望该结构是另一种类型中的嵌套类?或者你想要一个结构实例作为另一种类型的数据成员?我想要一个结构实例作为另一种类型的数据成员那么Erik的答案是正确的。我建议读一本好的C++书!我已经编辑了你的问题来澄清它。谢谢!另外,我在同一个Foo.h中声明了函数(并在Foo.c中实现),我在类Bar中调用该函数。我收到链接错误(找不到符号)。我该怎么办?@Namratha:我猜你用的是gcc:
g++-Wall-o myapp Foo.c Bar.c Otherfiles.c
我实际上是在MAC上用XCode做的。我想知道代码中是否有什么我应该做的。@ Namratha:由于两个主要原因,你没有得到符号的错误:1)实际上你没有实现你声明和使用的东西,或者2)你的构建并没有链接所有的文件。实际上,我必须使用外部的“C”,这是当C++编译器必须编译C代码时使用的。