

a.h中的結構體dog需要 b.h中的結構體fish,而b.h中的haha(dog * a);又需要a.h中dog
uj5u.com熱心網友回復:
a和b不要交叉include,把交叉的部分抽出來做個c.h,在c.h里include a和b比如在你這個例子中可以把haha放到c.h,你的應用程式直接iclude c就好了,因為c已經include a和b了
uj5u.com熱心網友回復:
有沒有簡單無腦的處理頭檔案的辦法,如果一個工程很大的話,每次都要費神怎么安排頭檔案的話,感覺好累啊
uj5u.com熱心網友回復:
這就是你程式設計的問題了,不光是c語言,其他語言也有差不多的機制,要import相應的包(package),所以就看你怎么設計這些package了,對于c來說,就是看你怎么設計這些頭檔案了uj5u.com熱心網友回復:
謝謝!
uj5u.com熱心網友回復:
A參考B的型別, B參考A型別,這種事兒很常見的啊只要前置宣告一下另外一個型別就好了
和兩個檔案還是一個檔案都沒有關系
都是屬于結構定義,又不是變數宣告,不會沖突
uj5u.com熱心網友回復:
可不可把所有參考放在一個頭檔案里然后在相應頭檔案里分別定義。
uj5u.com熱心網友回復:
不知道相互參考的意義在哪里?使用起來不覺得容易混淆嗎?
uj5u.com熱心網友回復:
前置宣告即可uj5u.com熱心網友回復:
最好的可擴展的方案書把相互呼叫的部分提出出來,作為另外的檔案,這樣就避免了相互呼叫,避免相互呼叫這種耦合性是非常重要的uj5u.com熱心網友回復:
#if !define
了解一下!
uj5u.com熱心網友回復:
5樓正解前置宣告一下就可以
uj5u.com熱心網友回復:
#pragma once
這樣就可以了,你試試看
不用#endif
uj5u.com熱心網友回復:
前置宣告是什么樣子的? 可以直接寫出來讓我看看嗎?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/130869.html
標籤:C語言
下一篇:兼容任務,跪求大佬寫一下
