怎么用dll?

时间:2010-02-24 17:13:20

标签: c++

我在vs2008中有一个使用第三方静态库的程序/项目。现在,我注意到我需要通过dll提供一些api。显然,一个第三方计划将通过我将提供的api使用我的dll。

任何人都可以就我需要做什么给出一些指示吗?我需要在vs2008中创建一个dll,只需将我的方法逻辑复制并粘贴到我提供的api中吗?

我有什么潜在的问题需要担心吗?

谢谢

1 个答案:

答案 0 :(得分:2)

我建议您查看this MSDN tutorial有关创建&使用DLL。

遗憾的是,有很多潜在的问题需要考虑。一个非常简短的,绝不是我脑子里的完整列表:

  • 您需要了解potential errors passing CRT objects across DLL boundaries
  • 如果您在一个模块中分配对象并在另一个模块中释放它们,则您的DLL和客户端代码必须链接到相同的CRT
  • 将接口与DLL头文件中的实现分开是非常重要的。这意味着你经常不能像use std::string那样做函数参数,甚至做私有成员变量。

如果我想到更多或找到更多链接,我会添加它们。