cythonを使用していくつかのc++コードをラップしていますが、デフォルト値でパラメーターを処理するための最良の方法がわかりません。
私のc++コードには、パラメーターがデフォルト値を持つ関数があります。パラメータが指定されていない場合にこれらのデフォルト値が使用されるように、これらをラップしたいと思います。これを行う方法はありますか?
この時点で、オプションパラメータを提供するために私が見ることができる唯一の方法は、それらをpythonコードの一部として定義することです(以下のdef func
pycode.pyxのsatementで)が、デフォルトが複数回定義されていますが、これは望ましくありません。
cppcode.h:
int init(const char *address=0, int port=0, int en_msg=false, int error=0);
pycode_c.pxd:
cdef extern from "cppcode.h":
int func(char *address, int port, int en_msg, int error)
pycode.pyx:
cimport pycode_c
def func(address, port, en_msg, error):
return pycode_c.func(address, port, en_msg, error)