error:LNK2005 _main 已經在 *.obj 中定義
出現這個錯誤有如下幾種情況
重複定義全域性變數。可能存在兩種情況
A:這種情況一般存在於建立的工程之中,我用的是vs2015.全域性變數是針對整個工程的。正確的應該是在一個CPP檔案中定義如下:int g;那麼在使用的CPP檔案中就應該使用:extern int g
(1)宣告必須使用extern關鍵字;
(2)不能給變數賦初值2.標頭檔案的包含重複。
此時應該在標頭檔案中設定 相關的巨集 等防止重複連結的措施。
#ifndef MY_H_FILE //如果沒有定義這個巨集
#define MY_H_FILE //定義這個巨集
……. //標頭檔案主體內容
…….
) #endif
或者新增預編譯
#pragma once
3.使用第三方的庫造成庫衝突
C執行期函式庫和MFC的庫衝突。具將那個提示出錯的庫放到另外一個庫的前面就行了
還有一種方法就是把檔案字尾名改成*.c 這樣在編譯的時候就會自動忽略,但是easy X不支援C的,只能支援C++.
綜上,你應該把要申明的變數放在一個1.h中,然後在其中寫如下程式碼
#pragma once
int i=0;
然後新建的.cpp檔案中包含#include<1.h>
至此大部分都可以解決,大家還可以參考如下幾位博主的見解,感謝幾位博主