[英]can two structs defined in same class can access each other?
如果我有一堂課有兩個結構
struct A{
B *ptr; //it says identifier undefined
};
struct B{
};
兩者都在同一類中定義。 如我上面提到的,是否可以將結構B的指針保存在結構A中? 任何人都可以幫忙嗎?
在C ++中,必須在使用所有符號之前聲明它們。 所以,簡單地把B
結構中的前A
結構。
您只需要先聲明struct B
:
struct B;
struct A{
B *ptr; //it says identifier undefined
};
struct B{
};
放
struct B;
首先,您就完成了。 這告訴編譯器將有一個B
是的,您可以,只需在使用實例declare the structure name before
。
struct B; // declared before struct A, now the problem is gone.
struct A{
B *ptr; //it says identifier undefined
};
struct B{
};
將支柱B放在結構A之前。
class book
{
struct B
{
};
struct A
{
B * ptr;
};
};
將結構B放在結構A之前。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.