在最初使用Clion这款软件做C++开发时,有时会遇到在同一个Project中有多个cpp文件,而每个cpp文件又都有main函数,因此运行时会出现multiple definition of `main'这样的错误。

一,问题重现

解决Clion中多个cpp文件运行时出现multiple definition of `main'

二,解决问题

这是因为一个编译链接生成的EXE文件只能有一个main函数,为了能使多个带main函数的cpp文件能在同一project中运行,我们需要在CMakeList.txt中做一些修改。在add_executable()中给cpp文件取一个别名,这个别名便会成为生成的EXE文件的名字。先看一下未修改之前的:

解决Clion中多个cpp文件运行时出现multiple definition of `main'

下面我们修改一下:

解决Clion中多个cpp文件运行时出现multiple definition of `main'

然后运行一下:

 

解决Clion中多个cpp文件运行时出现multiple definition of `main'

第二cpp文件的运行:

解决Clion中多个cpp文件运行时出现multiple definition of `main'

没有报错都成功执行了。

接着看一下生成的EXE文件:

解决Clion中多个cpp文件运行时出现multiple definition of `main'

至此问题就彻底解决了!大家有问题欢迎光临:志颖博客

相关文章:

  • 2022-12-23
  • 2021-07-31
  • 2022-12-23
  • 2022-12-23
  • 2021-12-09
  • 2022-12-23
  • 2021-07-26
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-07
  • 2021-06-17
  • 2022-02-11
  • 2021-11-01
相关资源
相似解决方案