win32编程 -- 动态库中声明类

简介: win32编程 -- 动态库中声明类

一、新建dll项目


0a2653c851af460fa595bd959398a8f1.png


二、新建.h文件

#ifndef __CLASSDLL_H
#define __CLASSDLL_H
#ifdef DLLCLASS_EXPORTS
#define EXT_CLASS _declspec(dllexport)
#else
#define EXT_CLASS _declspec(dllimport)
#endif
class EXT_CLASS yunsuan
{
public:
       int add(int a, int b);
       int sub(int a, int b);
};
#endif


三、新建CPP文件


#define DLLCLASS_EXPORTS
#include "dll类.h"
int yunsuan::add(int a, int b) {
       return a + b;
}
int yunsuan::sub(int a, int b) {
       return a - b;
}


四、生成dll


五、调用dll

#include <stdio.h>
#include "../动态库添加类/dll类.h"
#pragma comment(lib,"../Debug/动态库添加类.lib")
int main() {
       yunsuan ys;
       int a = ys.add(1, 2);
       int b = ys.sub(2, 1);
       printf("和:%d,差:%d", a, b);       return 0;
}
目录
相关文章
|
1月前
静态库封装之ComDir类
【10月更文挑战第30天】在软件开发中,静态库封装可以提高代码的可复用性和可维护性。本文介绍了一个用于处理目录操作的 `ComDir` 类,包括创建目录、检查目录是否存在、获取目录中的文件列表等方法,并提供了使用示例。通过封装这些常用功能,可以在不同项目中方便地复用代码。
|
2月前
|
设计模式 开发者 Python
Python类里引用其他类
Python类里引用其他类
32 4
|
4月前
|
编译器 C++
【C/C++学习笔记】C++声明与定义以及头文件与源文件的用途
【C/C++学习笔记】C++声明与定义以及头文件与源文件的用途
63 0
|
4月前
|
C++
CPP语法(四)——类的声明和定义
CPP语法(四)——类的声明和定义
41 0
|
6月前
|
编译器 C++ 存储
【C++语言】类和对象--默认成员函数 (中)
【C++语言】类和对象--默认成员函数 (中)
【C++语言】类和对象--默认成员函数 (中)
|
7月前
|
C语言 C++
win32编程 -- 编写静态库空项目
win32编程 -- 编写静态库空项目
39 0
|
存储 编译器 C++
《C++避坑神器·十五》动态库只有dll文件,没有.lib文件时动态调用dll的中类和成员函数
《C++避坑神器·十五》动态库只有dll文件,没有.lib文件时动态调用dll的中类和成员函数
434 0
|
Python
Python封装、继承、多态、拷贝
Python封装、继承、多态、拷贝
77 0
|
C++
win32编程 -- 动态库中声明类
win32编程 -- 动态库中声明类
85 0
win32编程 -- 动态库中声明类
|
安全 Linux 编译器
linux下封装函数库——动态库.so和静态库.a(代码实现及链接方式)
在linux环境下的链接库分为静态链接库(.a库)和动态链接库(.so库),其作用是把C程序编译好做成一种可执行链接文件,主程序文件调用这些程序的函数接口是可以使用a库或so库,在主程序中只需要include含有库中提供的函数接口声明的头文件即可。所以学会如何将自己的源代码封装成库进行使用很重要
891 0
linux下封装函数库——动态库.so和静态库.a(代码实现及链接方式)