g**********t 发帖数: 475 | 1 我有一个似然函数,是用面向对象的方式写的。现在我想用一个别人用c语言写的子程
序来对我的函数进行优化。由于这个子程序是用c写的,只能接受一个函数指针作为参
数。由于这个子程序比较复杂,不想对其做太多改动。请问如何能把我的类对象封装成
函数指针? 用functor吗? |
a**e 发帖数: 64 | 2 how about writing a wrapper function that use your object? |
t****t 发帖数: 6806 | 3 show us some details:
what is your member function signature?
what is your C function accepting?
which object are you going to use?
【在 g**********t 的大作中提到】 : 我有一个似然函数,是用面向对象的方式写的。现在我想用一个别人用c语言写的子程 : 序来对我的函数进行优化。由于这个子程序是用c写的,只能接受一个函数指针作为参 : 数。由于这个子程序比较复杂,不想对其做太多改动。请问如何能把我的类对象封装成 : 函数指针? 用functor吗?
|
b*******s 发帖数: 5216 | 4 C里面调用c++代码的一般方法是,你自己写一个接口函数,放在extern "C" {} 里面,
这样两种代码都可以使用,因为没有mangling
在这个接口函数里,你想干什么干什么
【在 g**********t 的大作中提到】 : 我有一个似然函数,是用面向对象的方式写的。现在我想用一个别人用c语言写的子程 : 序来对我的函数进行优化。由于这个子程序是用c写的,只能接受一个函数指针作为参 : 数。由于这个子程序比较复杂,不想对其做太多改动。请问如何能把我的类对象封装成 : 函数指针? 用functor吗?
|
g**********t 发帖数: 475 | 5 我有一个似然函数,是用面向对象的方式写的。现在我想用一个别人用c语言写的子程
序来对我的函数进行优化。由于这个子程序是用c写的,只能接受一个函数指针作为参
数。由于这个子程序比较复杂,不想对其做太多改动。请问如何能把我的类对象封装成
函数指针? 用functor吗? |
a**e 发帖数: 64 | 6 how about writing a wrapper function that use your object? |
t****t 发帖数: 6806 | 7 show us some details:
what is your member function signature?
what is your C function accepting?
which object are you going to use?
【在 g**********t 的大作中提到】 : 我有一个似然函数,是用面向对象的方式写的。现在我想用一个别人用c语言写的子程 : 序来对我的函数进行优化。由于这个子程序是用c写的,只能接受一个函数指针作为参 : 数。由于这个子程序比较复杂,不想对其做太多改动。请问如何能把我的类对象封装成 : 函数指针? 用functor吗?
|
b*******s 发帖数: 5216 | 8 C里面调用c++代码的一般方法是,你自己写一个接口函数,放在extern "C" {} 里面,
这样两种代码都可以使用,因为没有mangling
在这个接口函数里,你想干什么干什么
【在 g**********t 的大作中提到】 : 我有一个似然函数,是用面向对象的方式写的。现在我想用一个别人用c语言写的子程 : 序来对我的函数进行优化。由于这个子程序是用c写的,只能接受一个函数指针作为参 : 数。由于这个子程序比较复杂,不想对其做太多改动。请问如何能把我的类对象封装成 : 函数指针? 用functor吗?
|
s******u 发帖数: 501 | 9 用bind把member function和这个class的某个instance绑定起来就好了
object是有状态的,你需要把状态绑定到函数来伪装成一个free function
【在 g**********t 的大作中提到】 : 我有一个似然函数,是用面向对象的方式写的。现在我想用一个别人用c语言写的子程 : 序来对我的函数进行优化。由于这个子程序是用c写的,只能接受一个函数指针作为参 : 数。由于这个子程序比较复杂,不想对其做太多改动。请问如何能把我的类对象封装成 : 函数指针? 用functor吗?
|