请教一个C++的问题?
这个问题我搞了好久都没有解决,那位好心帮帮忙吧。
有两个类class A 和 class B
A 中有一个成员类型为 B 的变量,而 B 中又有一个成员类型为 A* 的指针。
如何实现他们呢。
我为他们分别创建了文件A.h、A.cpp、B.h、B.cpp,我不知道该以什么顺序包含他们的头文件。编译总是无法通过。
#include<iostream>
using namespace std;
class A;
class B
{
private:
A * pa;
public:
B(){pa = NULL;}
B(A * pAValue){ pa = pAValue;}
void setPAValue(A * pAValue){ pa = pAValue;}
A * getPAValue(){ return pa;}
void display()
{
cout<<std::hex<<pa<<endl;
}
};
class A
{
private:
int a;
B b;
public:
A(){ a = 0; }
A(int aValue, B bValue):a(aValue),b(bValue){}
void setAValue(int aValue){a = aValue;}
void setBValue(const B & bValue){ b = bValue;}
int getAValue(){return a;}
B & getBValue(){return b;}
void display()
{
cout<<\"a = \"<<a<<endl;
cout<<\"b = \";
b.display();
}
};
int main()
{
A a;
a.display();
cout<<\"*****************\"<<endl;
B b(&a);
A a2(2, b);
a2.display();
return 0;
}
--------------------Configuration: AB - Win32 Debug--------------------
Compiling...
B.cpp
Linking...
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/AB.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
AB.exe - 2 error(s), 0 warning(s)