用vc创建一个dll文件,里面包含一个空类,编译完成后,在lib文件里看到此空类没有包含任何函数,在dev c里面建立同样的dll文件,在编译后产生的.h文件里可以看到这个导出的类包含了默认构造函数和析构函数,可好多书里都提到,应该是是个函数,我的里面怎么会没有另外的两个函数导出?

解决方案 »

  1.   

    lib里面记录的是接口吧。析构函数和构造函数是没有任何返回的。即使是void函数也是有返回的。百度百科里面有介绍。他们的实现在dll中,不需要在lib中标识吧
      

  2.   

    .h文件里的函数和dll export的函数是完全两个概念。
    默认应该是一个默认构造函数,一个析构函数,一个拷贝构造函数和一个赋值运算符。
    取地址运算符和const取地址运算符只有需要的时候编译器才会生成。