|
1
5
技术上不,你不能。 碰巧,您的编译器使用的调用约定与“c”函数使用的调用约定相同。由于C++的ABI未被定义,编译器的下一版本可以自由使用完全不同的调用约定,这将使代码混乱,没有编译器的警告。
见:
http://www.parashift.com/c++-faq-lite/pointers-to-members.html#faq-33.2
编辑:
以线程为例:
|
|
|
2
-1
那就行了。实际上,您可以扩展该函数来调用依赖于捕获的信号的类的特定实例。例如,如果向类中添加一个非静态方法进程,则可以这样做:
|
|
3
-1
我在windows thead程序和其他各种回调中做了同样的工作,并且RTX总是中断。唯一真正的gotcha是成员必须是静态的(您已经知道了),并且您必须确保您的例程设置为使用标准的C/System调用约定。遗憾的是,您如何做到这一点取决于平台。在Win32中,它带有“uu stdcall”修饰符。 请注意,可以使用指针参数中的passback将此类调用“转换”为普通类方法调用。就像这样(“self_calling_callback”是静态方法):
|
|
|
sk123 · Shell脚本-如何在循环中显示变量名及其值 2 年前 |
|
|
sai · unix中使用python进行数据重组 2 年前 |
|
|
FangQ · 如何使用jq打印由制表符“\t”分隔的JSON数组元素 2 年前 |
|
|
ROHAN · 我想显示包含一个括号的行,包括它的开头或结尾 2 年前 |
|
Geomicro · 删除模式sed之间的逗号 3 年前 |