2013-12-17 68 views
0

我正在使用不是由我寫的C++庫。頭文件中重複的類聲明

某些頭文件包含其他類,但仍有某種類的「重複」空類定義。這種行爲的目的是什麼?

#include "OtherClass.h" 


class OtherClass; 

class ThisClass { 
    // definitions here 
}; 
+1

似乎毫無意義,對我來說都有兩樣。我沒有遇到這樣做的好理由。 – chris

+0

http://stackoverflow.com/questions/553682/when-to-use-forward-declaration – exagi

回答

1

這是類的前向聲明,它是一個沒有標識符完整定義的聲明。這有助於減少編譯時間以及循環依賴。

在你的場景中,你只應該包含或轉發聲明類,但不能同時包含這兩個類。