iteye_19447 2010-03-28 22:16
浏览 282
已采纳

关于c++库调用

想知道如果做c++开发,第三方库一般都是以什么形式存在,静态的还是动态的?
Windows下面的Lib和Dll分别和Linux下面的so与a有什么不同,分别都在代码里面如何调用?

我看到有的是在g++编译的时候,用-I加入,有的是用#Progam comment(..)加入,有的是dlopen,
而dlopen貌似是无需引入header文件,在代码中利用open的句柄,用函数指针来实现调用的,如果我引入的库不是函数,而是一个类的话,在不知道类定义声明的前提下如何调用;
貌似所有的c++书中都没有详细的介绍和说明和例子,希望这方面能详细的讲解一下这几种方法,或者提供学习的链接,跪谢

  • 写回答

1条回答

  • xenocide 2010-03-28 23:01
    关注

    静态 / 动态 第三方库都有可能

    lib 对应 a (静态库,代码会 copy 到成品中)
    dll 对应 so (动态链接库、共享库)
    文件格式不一样,不过 dll 这个后缀改名为 so 后缀其实是没问题的 ……

    参考一
    [url]http://learn.akae.cn/media/ch20.html[/url]

    参考二
    [url="http://book.douban.com/subject/3652388/"]《程序员的自我修养》[/url] (书名很 orz 是没错啦 ……)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)
  • ¥20 怎么在stm32门禁成品上增加查询记录功能
  • ¥15 Source insight编写代码后使用CCS5.2版本import之后,代码跳到注释行里面
  • ¥50 NT4.0系统 STOP:0X0000007B
  • ¥15 想问一下stata17中这段代码哪里有问题呀