-8
我试图导入到C++类,一些Ç代码,这是非常复杂的,我不明白(请尽量不要杀我,我不知道C++ )使用类的成员函数指针
里面一个cpp
I类有成员:
void Bluetooth::nus_data_handler(ble_nus_t * p_nus, uint8_t * p_data, uint16_t length)
{...}
void Bluetooth::services_init(void)
{
ble_nus_init_t nus_init;
nus_init.data_handler = nus_data_handler; //********* problem is here !
}
所以,当这两个功能是相同的C文件,其确定,但是当他们是一个C++ CLAS成员有一个错误,我不能将此功能从一种转换到另一种。
我明显做了一些愚蠢的事情,如何纠正它?
在我看来,这是一个正确的问题(没有用正确的术语表达)。 –
@AlejandroMontilla不,不是。 MCVE在哪里? – LogicStuff
您没有显示您尝试*使用*的上下文。 C++类的成员函数有一个隐含的'this'指针被传递(通常作为第一个参数,但我认为这取决于实现),因此它们不能被视为“常规”C函数。如果你有一个'static'函数,那么它就不是一个真正的成员,并且可以像对待一个普通的C函数一样处理。如果它*具有*作为成员函数,那么你有很多工作要做,而且问题中没有足够的代码让我们知道如何帮助你。 –