[英]compile c++ code into pyd with cython
Cython將類似python的代碼編譯為C ++代碼,然后使用gcc / g ++將其編譯為pyd之類的庫。
可以說我將用純C ++編寫代碼,然后將其編譯為pyd以在Python中使用,例如,可以說我擁有以下C ++模塊
int sum(int a, int b){
return a + b
}
是否可以在不使用PyObject,Ctype ...等工具的情況下將該代碼編譯為pyd? 還是代碼必須首先使用Cython語法編寫才能與Python兼容?
我不是這方面的專家,但正如沒有人回答,這是我的看法:
如果要避免在C語言中使用PyObject結構和“ Python.h”,則應使用cython。
問題在於**。pyd是一個特別預先配對的DLL,它公開了import ()友好接口,我認為其中包括返回PyObjects。
但是在普通的DLL或共享庫lib上使用ctypes並不困難:
>>> import ctypes
>>> mysum = ctypes.cdll.LoadLibrary("mysum.so") # Or DLL
>>> print mysum.sum(2, 3)
5
您只需要導出sum函數即可從動態庫中使用,並這樣編譯您的代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.