在最初使用Clion這款軟件做C++開發時,有時會遇到在同一個Project中有多個cpp文件,而每個cpp文件又都有main函數,因此運行時會出現multiple definition of `main'這樣的錯誤。
一,問題重現
二,解決問題
這是因爲一個編譯鏈接生成的EXE文件只能有一個main函數,爲了能使多個帶main函數的cpp文件能在同一project中運行,我們需要在CMakeList.txt中做一些修改。在add_executable()中給cpp文件取一個別名,這個別名便會成爲生成的EXE文件的名字。先看一下未修改之前的:
下面我們修改一下:
然後運行一下:
第二cpp文件的運行:
沒有報錯都成功執行了。
接着看一下生成的EXE文件:
至此問題就徹底解決了!大家有問題歡迎光臨:志穎博客