
C/C++语言中全局变量重复定义的问题,可以通过多种方法来解决。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
在C语言中,当使用 `extern` 关键字来声明全局变量时,通常需要在头文件(`.h`) 和源文件(`.c`) 中重复进行定义。这种重复定义的做法,不可避免地会增加出错的可能性。近期,在回顾和优化我自己的代码时,由于我的代码始终集中在一个单一的cpp文件中,我决定将各个模块分离出来,从而提升代码的可读性和管理性。为了解决这个问题,我尝试采用以下方案:将宏定义、结构体定义、函数声明以及全局变量定义集中到名为 `head.h` 的头文件中进行;函数的定义则放在 `head.cpp` 文件中;而主函数则放在 `main.cpp` 文件中。然而,编译过程中却出现了错误提示,指出 `xxx` 变量已经在 `.obj` 文件中已被定义。那么,为什么会出现这种现象呢?首先需要理解单个文件的编译过程是独立的。
全部评论 (0)
还没有任何评论哟~


