【5】python调用c++的动态链接库

【1】动态链接库的创建

[1.1]文件的创建

(1)新程序直接创建

(2)exe修改为动态链接库(修改配置类型为dll)

【1.2】动态库中的头文件和应用文件

.h文件

#pragma once
//test.h
#pragma once
class Mymath {
	int sum(int, int);
	int sub(int, int);
};

.cpp文件

#include"pch.h"
#include"pycall.h"
#define DLLEXPORT extern "C" __declspec(dllexport)
//两数相加
DLLEXPORT int  sum(int a, int b) {
	return a + b;
}
//两数相减
DLLEXPORT int sub(int a, int b) {
	return a - b;
}

【2】python程序的创建

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
# here put the import lib
import ctypes
import os

CUR_PATH=os.path.dirname("H:\\VS2017example\\PYOFCPLUS\\pythonusedll\\")
dllPath=os.path.join(CUR_PATH,"CPLUSTOPYTHON.dll")
print (dllPath)
mydll=ctypes.cdll.LoadLibrary(dllPath)
print(mydll) 
pDll=ctypes.WinDLL(dllPath)
print(pDll)

pResutl= pDll.sum(1,4)
pResult2=pDll.sub(1,4)
print (pResutl)
print (pResult2)

【3】参考文献

Python调用C++ 编写的dll动态库函数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值