首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎么在shared library中调用主函数的类或变量

2013-07-01 
如何在shared library中调用主函数的类或变量?linux平台下,主函数里定义一些变量,或者类的成员变量,动态加

如何在shared library中调用主函数的类或变量?
linux平台下,主函数里定义一些变量,或者类的成员变量,动态加载so文件,dlopen。
这样的话,如何在shared library中获得主函数中的变量值?

int count()
{
    int num = 9;
    int result = 0;
    for ( int i = 0; i < num; i++ ){
        result ++;
    }
    return result;
}


比如修改这里so文件中num,但不是通过 int count(int num) 的方式。
so中和主函数中分别需要做什么?
谢谢! Linux c++ 库
[解决办法]
堆上的变量你怎么修改...
没有执行 count 函数的时候, num 都不存在.

如果是全局变量, 它默认就是导出的.

[解决办法]
楼上正解,就是这样。
[解决办法]
可以写个函数,接收变量的值。在动态库中导出这个函数,在main函数中调用这个函数,值作为参数传进去
[解决办法]
传递指针到 so中不就可以随时访问了么

热点排行