使用靜態成員(它是頭中的另一個類)聲明類時是否存在任何問題?例如:被聲明爲靜態類成員的C++類
class Stat
{
public:
int avar;
Stat();
};
class Test
{
public:
static Stat stat;
};
我擔心它可能會導致問題的原因是,它似乎非常類似於在頭中聲明全局變量。如果包含在兩個cpp文件中,則會在兩個文件中聲明全局,從而導致錯誤。
上面例子中的'stat'仍然需要在兩個cpp文件之間創建一次,這與全局相同,所以編譯器如何處理一種情況而不是另一種,或者它不能做到的答案?
這些__CLASS定義,不declarations__。 'Test :: stat',無論如何,只是一個__member聲明___,仍然需要定義。 (見[這個答案](http://stackoverflow.com/questions/1410563/what-is-the-difference-between-a-definition-and-a-declaration/1410632#1410632)什麼是聲明和定義C++。) – sbi 2010-07-21 11:18:13