设为首页 加入收藏

TOP

Linux下静态加载一个动态库出现的问题及解决
2014-11-24 00:35:35 来源: 作者: 【 】 浏览:4
Tags:Linux 静态 加载 一个 动态 出现 问题 解决

最近在Linux下工作中碰到一个问题,虽然问题已经解决,但是还是不太明白具体原因,为什么会出现这个问题。


程序结构:有两个动态库A.so和B.so, 并且A.so静态加载了B.so。同时A和B同时有一个相同的类C, (为了下边的清晰暂且叫AC类和BC类,其实就是一个类), BC类新添加函数fun1, AC和BC相同的函数fun。 B中有一个C的实例objectBC。fun和fun1内容为:


void AC::fun(void)
{
cout<<"AC::fun"< }
void BC::fun(void)
{
cout<<"BC::fun"< }
void BC::fun1(void)
{
cout<<"BC::fun1"< }


问题描述:


objectBC分别调用fun和fun1两个函数, 函数输出:


AC::fun //为什么不是BC::fun


BC::fun1


解决方法:BC类加到一个命名空间内。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇分享经验丰富的Linux程序员Spence.. 下一篇viausl c++ 08, dev-c++, Ubuntu..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: