高级搜索
收藏本站
网站地图
RSS订阅
首页
新闻
Ubuntu
Fedora
Gentoo
Mandriva
Slackware
Suse
红旗
LFS
C++
JAVA
Perl
PHP
Python
Ruby
入门
命令
多媒体
服务器
内核
嵌入式
软件
SHELL
DB2
MySQL
Oracle
PostgreSQL
Sybase
智能模糊搜索
仅搜索标题
热门关键字:
ubuntu
分区
linux系统进程
函数
Fedora
当前位置 :
|
主页
>
Linux教程
>
编程开发
>
C++
>
多文件包含同一头文件导致链接时重定义错误
来源:
作者:
时间:
2007-11-20
Tag:
点击:
如
#ifndef GLOBAL_H
#define GLOBAL_H
const int a = 3;
const char *STR = "ABC";
#endif
然后在a.cpp和b.cpp中都包含这个头文件,结果显示STR重定义。
解释:
STR被赋值,所以已不再是声明,在两个文件中出现会导致赋值两次,从而导致重定义。而int型则经过优化,相当于常量了。
教训:
原则上.头文件里只有声明,不应该有初始化语义
[
收藏
]
[
推荐
]
[
评论
]
[
打印
]
[
关闭
]
0
顶一下
上一篇:
printf()函数参数格式详解
下一篇:
部分排序问题
最新评论
共有 4 位网友发表了评论
查看所有评论
发表评论
评论内容:
不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:
密码:
匿名?
注册
栏目列表
C++
JAVA
Perl
PHP
python
Ruby
热点关注
C/C++笔试题目大全
C++面试题集(最全的C\C++
Linux 常用C函数说明-文件
Linux 常用C函数说明-文件
extern的作用
Linux 常用C函数说明-接口
Linux 常用C函数说明-进程
如何生成csv文件,以及csv
c/c++实现一个密集型serve
printf()函数参数格式详解
Linux 常用C函数说明-内存
摄像头驱动实现源码分析
Linux 常用C函数说明-文件
Linux 常用C函数说明-信号
ld.so.conf 文件与PKG_CON
C++求职笔试题汇总
C++命名空间namespace
c语言中命令行参数argc,ar
GCC警告选项例解
GNU C 扩展之__attribute_
相关文章
makefile高级用法--使用ma
static_cast、dynamic_cas
ELF可执行格式文件转换成a
elf文件格式——另一文本
elf文件格式——另一文本
ELF可执行格式文件实例分
gcc c++ 程序的初始化
lighttpd1.4.18代码分析(
VxWorks的block设备驱动
g_base64_decode() demo