- 主题:g++编译 multiple definition 问题
RedisHelper* RedisHelper::p = new RedisHelper();
好久没写C++了,私有变量还能这么访问?一般是放在成员函数里吧。
--
修改:ackerx FROM 124.78.55.*
FROM 124.78.55.*
太久没写代码了记不清了。。如果有这种特性,感觉这种特性不是很好。
不过你的问题好解决。先手工-c 再-o,看下究竟是到哪一步有问题。如果生成.o有问题说明代码问题,如果link有问题就结合报错用nm看看各个.o有没什么可疑的地方。如果都没问题就是make不对,例如是不是要重新生成make文件?
【 在 bigsen 的大作中提到: 】
: 静态私有变量初始化啊
--
FROM 124.78.55.*
赞。
【 在 bigsen 的大作中提到: 】
: 是Makefile的问题,问题已解决,多谢啦
: 是在既有工程中添加一些新的代码文件,而这个既有工程只有Makefile,工程还稍微有点庞大,也不能利用Makefile直接反向生成cmake或者其它编辑环境所需那种工程(依赖)文件。因此搞得我但凡添加一些代码文件就得手动修改Makefile中,有些新添加的代码对既有工程还有些依赖,很崩溃。
:
--
FROM 124.78.55.*