C++ 静态成员 提示multiple definition
来源:互联网 发布:she候鸟 知乎 编辑:程序博客网 时间:2024/05/29 02:53
在业务开发中用到这样的场景,工具类中定义类一个成员对象,且为静态成员(非指针),在编译时提示重复定义,原来发现一时大意把静态成员再头文件中进行了初始化,
后改为在cpp中初始化后,问题解决。
与全局变量一个道理,编译器预处理时出现了多个定义造成的,全局变量除非是const常量否则也会出现重复定义现象,大同小异,但是仔细分析还是很多问题的。
详细参见这个帖子,喷的很好了已经:
http://bbs.chinaunix.net/thread-948722-1-1.html
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=948796&page=1#pid6918349
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=948722
同时,
在类内对静态成员初始化只可以是const成员保证唯一性,否则只能类外进行初始化,但是string对象不可以在类内初始化就算是const也不可以,这个涉及到string构造过程,详细不在此累述。
在此写下,备忘。(一天下来眼睛花了,遇到这个问题真的没看仔细,诸君莫要犯我这种错误,好low 哈哈)
0 0
- C++ 静态成员 提示multiple definition
- 使用EmBitz编译mbed提示mbed_wait_api.c:(.text.wait+0x0): multiple definition of `wait'
- 【c/c++】multiple definition-->static & extern
- C编译错误--multiple definition of 'XXX'
- multiple definition
- qt 编译时提示error: multiple definition of
- qt 编译时提示error: multiple definition of
- 解决C/C++中的multiple definition of问题
- c语言重复定义 multiple definition of `Recusion'
- 解决C/C++中的multiple definition of问题
- 解决C/C++中的 multiple definition of 问题
- C/C++中的multiple definition of“****”的问题
- "multiple definition of" 错误
- multiple definition of...
- multiple definition of...
- 解决 multiple definition of
- extern: multiple definition of
- gcc: multiple definition of
- 同余定理在编程中的应用
- 如水的夜,似铁的心
- Kafka学习6_关于Kafka 的消息日志Offset 的了解
- 用 WEKA 进行数据挖掘(参考链接整理)
- ORA-12705: 无法访问 NLS 数据文件, 或者指定的环境无效
- C++ 静态成员 提示multiple definition
- Android - Menus
- 我与MyBatis
- 黑马程序员之JAVAIO(二)
- 虚函数,纯虚函数讲解
- Java Web中的中文编码问题(下)
- Qt 分组布局
- UI手势
- 加载第三方图片