2012-12-01 86 views
0

可能重複:
What is an undefined reference/unresolved external symbol error and how do I fix it?
Unresolved external symbol C++是否有可能在C++中有一個靜態字段?

我知道,你可以有靜態當地人和靜態全局變量,但有可能有靜態字段?我問,因爲當我聲明一個靜態字段(在類中聲明的靜態變量)時,我得到「未解析的外部」編譯器錯誤消息。

+0

是的。剛剛在今天早些時候回答。參見[這裏] [1] [1]:http://stackoverflow.com/questions/13660017/unresolved-external-symbol-c/13660035#13660035 –

+0

我們不能,如果你不回答把你的代碼或你做了什麼? ?這裏有一些參考可以幫助你。 1. http://stackoverflow.com/questions/195207/unresolved-external-symbol-on-static-class-members 2. http://stackoverflow.com/questions/7510165/c-static-variable-and-unresolved -externals-error –

回答

3

是的,這是可能的。你要做的是定義爲的靜態成員。通常在相應的.cpp文件中完成:

//=== C.h 

class C { 
    static int i; // declaration 
} 

//=== C.cpp 

#include <C.h> 

int C::i = 0; // definition 
+0

除非它是一個常量整型... – MFH

相關問題