这样使用友元为什么出错?
VC.net下,编译错误
error C2027: 未定义类型“A”的使用
//A.h文件
#include "B.h"
class B;
class A
{
public:
A(void);
~A(void);
int get(B* pb);
};
//A.cpp
#include "a.h"
A::A(void)
{
}
A::~A(void)
{
}
//B.h文件
#include "A.h"
class A;
class B
{
public:
B(void);
~B(void);
friend int A::get(B* pb);
private:
int m_x;
};
//B.cpp文件
#include "b.h"
B::B(void)
{
m_x = 10;
}
B::~B(void)
{
}
int A::get(B* pb)
{
return pb->m_x;
}