它们是否应该在.cpp
或.h
文件中声明?应该在哪里声明类对象?
实施例1:
A.h
#include "B.h"
#include "C.h"
class A
{
void someFunction();
B b;
C c;
}
实施例2:
A.cpp
#include "B.h"
#include "C.h"
A::someFunction()
{
B b;
C c;
// Do something with b and c.
}
实施例3:
A.cpp
#include "B.h"
#include "C.h"
B b;
C c;
A::someFunction()
{
// Do something with b and c.
}
如果它们只能在功能正在使用他们声明(实施例2)或者它们是否可以在头文件的顶部声明,如例3所示?
示例1不是其他两种的替代方案(实际上所有三种都是完全不同的情况),我也没有在那里看到循环依赖。 – user463035818
也许[这些**中的一个](https://stackoverflow.com/search?q=%5Bcpp%5D+circular+dependency)涵盖了你缺少的东西。你看起来了吗? – WhozCraig
@ tobi303你能否解释何时或是否应该使用这些情况? – C3PO