我有一个名为A的类,它有自己的.cpp和.hpp文件。它依赖于类B和C。现在,我在想,我应该在A.cpp还是A.hpp中使用#include B.hpp和#include C.hpp?我认为在A.hpp文件中使用#include对我是有好处的,因为我创建了一个B*的向量,如果我只向前声明它(所以我不能正确地递增指针),我不确定编译器是否会知道B的正确大小…“向前声明”,我的意思是在A.hpp的乞求中编写class B
我在定义嵌套类中的操作符时遇到了问题,这个类也是模板化的。我理解如何在.h文件中声明和定义它,但是我想在.h文件中声明它,并在.hpp文件中定义它。const T & operator*() const;};List.hpptemplate <typename T>typename List <T>::
I cannot #include "particle.hpp" in "field.hpp" if I #include "field.hpp" in "particle.hpp".当然,这很有意义。我在这两个文件中都使用了转发声明,但是编译器现在无法编译,并出现以下错误:
error: invalid use of incomplete type ‘class ElementaryParticle如何定义这两个类而不将它们