社区
Linux/Unix社区
帖子详情
liunx下如何从动态库导出类?
tiantang_85
2010-08-12 11:36:15
同题。从晚上搜到了,如何导出函数,但是导出类没有说明。请各位指教下。谢谢了
...全文
273
3
打赏
收藏
liunx下如何从动态库导出类?
同题。从晚上搜到了,如何导出函数,但是导出类没有说明。请各位指教下。谢谢了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
谭海燕
2010-08-12
打赏
举报
回复
linux下的C没怎么写过导出类的库。
我在MFC中写过导出类的库,大致思路就是导出类的定义,把类的接口留在外面。
wu1373369
2010-08-12
打赏
举报
回复
没明白啥意思,学习了
山椒π
2010-08-12
打赏
举报
回复
一样的,一个简单的C++库为例:
hello.h
#include <iostream>
class test{
private:
int m_num;
public:
test(int num);
~test();
int get_num();
void set_num(int num);
};
hello.cpp
#include "hello.h"
test::test(int num)
: m_num (num){
}
test::~test(){}
int test::get_num()
{
return m_num;
}
void test::set_num(int num)
{
m_num = num;
}
生成库:
g++ -g -c -fPIC -o libtest.so hello.cpp
之后为了测试方便可以将libtest.so复制到/usr/lib,头文件复制到/usr/include目录
sudo cp libtest.so /usr/lib
sudo cp hello.h /usr/include
测试程序:
main.cpp
#include "hello.h"
using namespace std;
int main(int argc, char **argv)
{
test *t = new test(5);
cout << t->get_num();
}
编译使用库:
g++ -o test main.cpp -ltest
之后测试运行下就可以了
linux
动态库
导出
类
,linux C++ 共享库
导出
类
1.共享库的对外接口函数的声明必须加上extern “C”。2.使用共享库对话接口函数生成的对象指针时在该对象未被释放之前不能关闭共享库句柄,否则会出现segmentation fault错误。以下是一个插件式设计的示例:1、主...
linux c++
动态库
类
导出
生成
动态库
g++ -rdynamic -m32 -c exportClass.cpp g++ -rdynamic -m32 -shared -o libexportClass.so exportClass.o -rdynamic 却是一个 连接选项 ,它将指示连接器把所有符号(而不仅仅只是程序已使用到的...
Linux
动态库
的
导出
控制
Linux
动态库
的
导出
控制 在实际工作中,许多软件模块是以
动态库
的方式提供的。做为模块开发人员,我们不仅要掌握如何编写和构建
动态库
,还要了解如何控制
动态库
的
导出
接口,这样,我们可以向模块的用户仅
导出
必要的...
C++ linux
动态库
so
导出
及使用
C++ linux
动态库
so
导出
log4cpp linux下编译安装使用宏定义进行区分windows & linux存在不兼容的函数sprint_s snprintf控制linux
动态库
的
导出
函数 第一次尝试
导出
linux
动态库
,遇到的问题做个记录。 log4cpp ...
Linux从
动态库
导出
函数
为 Linux 应用程序编写 DLL 在仅仅只会编写插件的时候为什么要编写整个应用程序? Allen Wilson (wilsona@us.ibm.com), 电子商务设计师, IBM Allen Wilson 在位于美国堪萨斯州奥斯汀的 IBM 任电子商务设计...
Linux/Unix社区
23,121
社区成员
74,508
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章