类是定义同一类所有对象的变量和方法的蓝图或原型。例如,可以建立一个定义包含当前档位等实例变量的自行车类。这个类也定义和提供了实例方法(变档、刹车)的实现。今天小编就带大家一起来学习一下,在VC中导出C++类的实现方法把。
一、准备工作
首先我们第一步需要做的就是,先创建一个Win32Dynamic-LinkLibrary工程,这个工程我们可以使用Wizard创建出来的。接下来我们还要定义一个比较简单的C++类既CInDLL。但是因为这一个类往往会被一些除了工程以外的文件所引用起来,因此我们就有必要对于这个以类进行引出的操作了。就是因为只有仅仅在引出了以后所生成的DLL(DynamicLinkLibrary的缩写,意为动态链接库。)里面,才会带有供足够的信息用来在运行以及连接的时候,被正确的引入到进程空间里面。那么在这里的话,我们就会有两种方法可以将类引出来,只需要使用__declspec(就是dllexport)定义以及使用定义文件就可以了。
二、使用__declspec的方法
那么接下来小编就向大家介绍一下使用__declspec(就是dllexport)的具体实现方法吧。具体的实现方法如下:首先我们先把类的定义修改成为:class__declspec(就是dllexport)CInDLL即可。这样做的话,那么所产生的工程在编译的时候就是正确的了。但是我们就会发现一点,那就是在使用的时候会产生一些bug(错误).为什么会出现这种情况呢?那就是因为大家所包含的头文件中也是使用了__declspec(就是dllexport),然而我们使用这个DLL的工程中是并没有将这个类引出来的,而是需要引入这个类。那么我们仅仅只需要在使用的时候,把类定义修改成为class__declspec(dllimport)CInDLL即可。
三、使用定义文件
为了可以非常有效的避免这个问题出现,我们只需要使用定义文件(一种帮助检测有害的或不需要的软件并阻止它在计算机上安装或运行的文件。)就可以了。在这里,小编温馨提示一下大家,那就是这以种方法只是在利用宏定义在不一样的地方就会产生不一样的编译代码。那么现在我们在头文件里面,编写加入下面的程序代码就可以了。具体的编程代码,如图所示:
如果我们是这样操作的话,那么我们在使用这一个类的时候,就可以不做任何的改动了。
小编结语:
今天的教程“在VC中导出C++类的实现方法”,小编就已经介绍完毕了,大家都理解清楚了吗?如果你也有这样的需要,那就赶快来学习一下吧。更多更全面的编程语言教程,尽在课课家教育。
¥268.00
¥398.00
¥498.00
¥118.00
¥15.00