Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过C++;函数作为Python的回调函数?_Python_C++_Python 3.x_Callback_Python C Api - Fatal编程技术网

如何通过C++;函数作为Python的回调函数?

如何通过C++;函数作为Python的回调函数?,python,c++,python-3.x,callback,python-c-api,Python,C++,Python 3.x,Callback,Python C Api,我正在使用Python3CAPI与一些Python代码进行接口 我使用C++代码> py-ObjutsPixEng/实例化了Python对象,并且我已经能够使用 pyObjtTeStAdTraceSt> < />代码修改它的一些属性。一个我想修改的属性是回调函数,我如何从一个C++函数实例化Python对象?< /p> 你需要做的是创建一个可调用的Python对象,当调用它时,它调用了C(或C++)中实现的函数。 我将实现一个新类,如Python中指定的。它可以实现任何类型的构造函数等。您可能需

我正在使用Python3CAPI与一些Python代码进行接口


我使用C++代码> py-ObjutsPixEng/<代码>实例化了Python对象,并且我已经能够使用<代码> pyObjtTeStAdTraceSt> < />代码修改它的一些属性。一个我想修改的属性是回调函数,我如何从一个C++函数实例化Python对象?< /p> 你需要做的是创建一个可调用的Python对象,当调用它时,它调用了C(或C++)中实现的函数。 我将实现一个新类,如Python中指定的。它可以实现任何类型的构造函数等。您可能需要,但最重要的是,它应该实现,这将使该类的实例可调用(就像有一个用Python实现的方法一样)

tp_call
是在C/C++中实现的,您可以创建此类的实例,这些实例是Python对象,可以传递给任何Python代码


参见:

不能将C++函数发送到Python代码。您需要创建一个调用该函数的可调用Python对象。(如果我正确理解了你的要求:/)这正是我所要求的。如何创建调用C++函数的可调用Python对象?