error LNK2005: 在 XXX.obj 中定义了重复符号/fatal error LNK1120: 无法解析的外部命令 C/C++
在C++编程中,经常会遇到各种编译错误和连接错误。其中,"error LNK2005"和"fatal error LNK1120"是两个常见的连接错误。本文将详细介绍这两个错误的含义以及如何解决它们。
error LNK2005: 在 XXX.obj 中定义了重复符号
当出现"error LNK2005"错误时,意味着在链接过程中,存在重复定义的符号。这通常发生在以下情况下:
- 多个源文件中包含了相同的全局变量或函数定义。
- 头文件中包含了函数的实现,而不仅仅是函数的声明。
为了更好地理解这个错误,让我们看一个示例代码:
// 文件1.cpp
int globalVariable = 10;