为什么c++将定义和声明分开写在不同文件的时候,会无法解析外部符号
时间: 2024-05-21 07:10:54 浏览: 113
C++常用符号 (2).docx
在C语言中,变量和函数的定义和声明是不同的概念。定义是在程序中为变量或函数分配存储空间的操作,而声明只是告诉编译器变量或函数的存在和类型信息。如果变量或函数在一个文件中被定义,而在另一个文件中只被声明,编译器就无法找到其实际的定义,从而无法解析外部符号。
为了解决这个问题,可以在声明时使用extern关键字告诉编译器该变量或函数是在另一个文件中定义的,从而使编译器能够正确解析外部符号。另外,也可以在链接时将多个文件的目标代码合并成一个可执行文件,这样就能够在运行时正确解析外部符号。
阅读全文