幾點意見:
1)array_length在life.h需要被externed
2)所有externed變量(寬度,高度,蜱,count_array,change_array,error_check,algorithm_length,array_length)需要在某個地方定義。
在你的代碼中,你已經基本告訴編譯器這些變量存在,但實際上並沒有將它們放置在任何地方。在全球範圍內的.cpp文件中的一個,你需要把:
unsigned short int width;
unsigned short int height;
unsigned long int ticks;
unsigned short int count_array[10923][10923];
bool change_array[10923][10923];
int error_check;
unsigned long int algorithm_length;
unsigned long int array_length;
這是完全一樣的,你有什麼life.h,除了沒有extern關鍵字。這實際上會創建變量,而不是現在他們沒有具體實現的地方。
如果您進行了更改,我建議您的代碼將編譯(使用gcc進行測試)。這就是說,你看到的實際錯誤是沒有意義的。
@Tim:'定義',而不是'聲明'。 –
你是否在每個文件中定義變量?那就是你最可能遇到的問題 – Tim