【发布时间】:2013-04-19 02:25:10
【问题描述】:
我写的代码:
struct A;
struct B;
struct A
{
int v;
int f(B b)
{
return b.v;
}
};
struct B
{
int v;
int f(A a)
{
return a.v;
}
};
编译信息:
|In member function 'int A::f(B)':|
11|error: 'b' has incomplete type|
7|error: forward declaration of 'struct B'|
||=== Build finished: 2 errors, 0 warnings (0 minutes, 0 seconds) ===|
我知道为什么该代码不正确,但我不知道如何实现两个可以相互访问的结构。有什么优雅的方法吗?提前致谢。
【问题讨论】:
-
我将其重新标记为 C++,因为它不是 C。
标签: c++ syntax struct dependencies forward-declaration