成都市建委電話seo引擎優(yōu)化是什么
Python調(diào)用c++生成的dll
- 1.簡單例子
- 1.1 vs2019 c++生成dll
- 1.2 Python端調(diào)用
- 2.調(diào)用c++類生成的dll
- 2.1 vs cpp端生成dll
- 2.2 Python端調(diào)用
- 參考文獻(xiàn)
1.簡單例子
1.1 vs2019 c++生成dll
- 項(xiàng)目中添加add.cpp文件
extern "C" int __declspec(dllexport) add(int x, int y)
{return x + y;
}
- 配置屬性
- 生成dll
點(diǎn)擊生成解決方案
,到輸出目錄文件夾查看add.dll
文件是否正常生成。
1.2 Python端調(diào)用
from ctypes import*import sys
try:mydll = cdll.LoadLibrary(r"add.dll")
except:sys.exit("No shared DLL/SO found")print(mydll.add(3,4))
#7
2.調(diào)用c++類生成的dll
2.1 vs cpp端生成dll
- 添加myDll.cpp文件
#include<iostream>
using namespace std;
class myDll
{
public:void helloDll() {cout << "hello dll" << endl;};
};extern "C"
{myDll obj;extern "C" _declspec(dllexport) void helloDll() {return obj.helloDll();}
}
- 配置屬性
dll名設(shè)置為myDll
.
- 生成dll文件
參考第一個(gè)例子。
2.2 Python端調(diào)用
from ctypes import*import sys
try:mydll = cdll.LoadLibrary("myDll.dll")
except:sys.exit("No shared DLL/SO found")mydll.helloDll()#hello dll
測(cè)試通過!
參考文獻(xiàn)
[1] python調(diào)用dll 結(jié)構(gòu)體 python如何調(diào)用dll 轉(zhuǎn)載