我正在寫一個python接口到一個C++庫,我想知道庫的正確設計。什麼是python-C++接口的代碼pythonic結構與許多功能?
我發現(困難的方式)所有傳遞給python的方法都必須聲明爲static。如果我理解正確,這意味着所有函數基本上都必須在同一個.cpp文件中定義。我的界面有很多功能,所以很快就會變得很難看。
處理這個問題的標準方法是什麼?我能想到的可能性:
- 不用擔心它,並使用一個looong .cpp文件
- 編譯成多個庫(.so文件)
- 寫一個.cpp每組該.CPP到主CPP定義文件(一個與PyMethodDef)
的身體功能和#包括兩者似乎非常難看