c++怎样将指向【成员函数】的指针强转成指向【普通函数】的指针
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++怎样将指向【成员函数】的指针强转成指向【普通函数】的指针相关的知识,希望对你有一定的参考价值。
假设函数的参数表、返回值都相同。
比如,如何将void (MyClass::*func)(int)转成void(*func)(int)
#include <iostream>
#include <functional>
#include <memory>
class MyClass
public:
MyClass();
~MyClass();
void func(int nInterger)
std::cout<<nInterger<<std::endl;
;
;
void main(void)
std::function<void(int)> func;
MyClass a;
func = bind(&MyClass::func, &a, std::placeholders::_1);
func(1000);
// 输出1000
// 下面是一个例子
http://blog.csdn.net/ch2065/article/details/12853195 参考技术A 试试定义成静态成员函数 参考技术B 貌似不可以这样转换的吧。。为什么要这样子转换呢追问
openGL的回调函数要求某个类型的函数指针,而我现在希望再对应事件时调用一个类的成员方法。另外,我希望回调函数的注册放在类的构造方法中
以上是关于c++怎样将指向【成员函数】的指针强转成指向【普通函数】的指针的主要内容,如果未能解决你的问题,请参考以下文章