我需要在我的C++程序中共享一些字符串。我應該使用#define還是const字符串?感謝const string與#define
mystring1.h
#define str1 "str1"
#define str2 "str2"
或者
mystring2.h
extern const string str1;
extern const string str2;
mystring.cpp
const string str1 = "str1";
const string str2 = "str2";
預處理器只能用於包含守衛,'__FILE__'和類似的內置宏,以及#ifdefs用於平臺特定的常量。雖然你可以使用它來定義你的代碼實際使用的常量,但下面的答案指出了幾個原因,這是一個壞主意。 – 2011-04-05 00:38:59