You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2019编译C++项目出现LNK2005、LNK1169错误如何解决

编译LNK2005/LNK1169错误解决方案

首先明确错误原因:C/C++ 规定一个可运行程序只能有一个唯一的入口函数main,你现在遇到的报错,就是因为整个解决方案里有两个代码文件都写了main函数,编译的时候系统不知道该用哪个当入口。你报错里提到的TestExpectedForce.obj对应的源文件是TestExpectedForce.cpp,这是项目自带的测试用代码,本身自带main函数,和你要跑的主程序的main冲突了。

操作步骤(完全按顺序来就行)

  • 打开Visual Studio 2019后,按快捷键Ctrl+Alt+L调出右侧的「解决方案资源管理器」面板
  • 在面板里展开你的项目下的「源文件」文件夹,找到名为TestExpectedForce.cpp的文件
  • 右键点击这个文件,选择菜单里的「属性」
  • 在弹出的属性窗口里,找到「常规」分类下的「从生成中排除」选项,把后面的值改成「是」,点击「确定」保存
  • 右键点击左侧面板顶部的整个解决方案,选择「重新生成解决方案」,等待编译完成即可

如果完成上面操作仍然报错,做以下检查:

  • 确认你没有手动往「源文件」文件夹里添加其他带main函数的cpp文件,一个项目只能保留1个你要运行的带main的主程序文件,其他无关的都按上面的步骤设置为从生成中排除
  • 不要修改项目默认的编译配置,直接用下载后自带的Debug或者Release配置编译即可

内容的提问来源于stack exchange,提问作者mpc45

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 07:42:00