可能重複:
What is the purpose of forward declaration?
Forward Declaration vs Include的.h文件包含在頭文件和cpp文件
我有點困惑,在頁眉和自備電廠的#include *.h
文件包含文件。我看到一些.h文件被包含在頭文件中,一些在相應的cpp文件中。我猜測所有需要的.h文件都需要包含在頭文件中,因此沒有看到它們被包含在cpp文件中的原因。這有什麼特別的原因嗎?
此外,我看到使用Class ClassName;
的頭文件中包含了一些所需的類。這與在頭文件中僅包含ClassName.h
有什麼不同?
[前向聲明的目的是什麼?](http://stackoverflow.com/questions/3110096/what-is-the-purpose-of-forward-declaration),[Forward Declaration vs Include] (http://stackoverflow.com/questions/3632818/forward-declaration-vs-include),[前進聲明/何時最好包括標頭?](http://stackoverflow.com/questions/10469531/forward-declaration-什麼時候最好包含頭文件),[前向聲明有什麼缺點?](http://stackoverflow.com/questions/9470961/what-are-the-drawbacks-of-forward-declaration) – 2012-08-09 01:56:50