我有一些代碼分佈在三個文件上,我想用第四個「gloabls」文件來存儲一些物理常量,例如pi的值。這將避免重複定義pi = 4*atan(1.0)
。跨多個文件的C++全局變量
/*globals.h*/
extern double g_pi;
和全球CPP文件:
/*globals.cpp*/
#include "math.h"
#include "globals.h"
double g_pi = 4*atan(1.0);
然後我包括在我的主文件,這些文件:
/*mainFile.cpp*/
//Include math and other libraries
#include globals.h"
int main() {
/*
....
*/
double x = 2*g_pi
/*
....
*/
}
閒逛,我已經試過是建立一個全球性的頭文件之後
這給了我一個未定義的參考錯誤g_pi。我在Ubuntu上使用g ++編譯器。希望它是一個簡單的修復!你的建議非常感謝。如果需要更多細節,我會很樂意提供。
問題可能在於您構建可執行文件的方式,因此您應該添加所使用的任何內容以對您的問題執行該操作(Makefile,g ++命令行...)。 – alexisdm 2012-03-14 19:51:44
你能包括你執行編譯的確切命令嗎?確切的錯誤信息? – JaredC 2012-03-14 19:52:19