【发布时间】:2015-01-11 09:53:30
【问题描述】:
您好,我想知道是否有人可以向我解释结构中的一个字段,如下所示:
struct example {
void (SomeClass::*someMethod)();
};
这究竟是什么以及您将如何/为什么使用它?谢谢。
【问题讨论】:
-
当人们不使用 typedefs 时会发生这种情况。
标签: c++
您好,我想知道是否有人可以向我解释结构中的一个字段,如下所示:
struct example {
void (SomeClass::*someMethod)();
};
这究竟是什么以及您将如何/为什么使用它?谢谢。
【问题讨论】:
标签: c++
这个结构包含一个指针,指向一个返回类型为 void 且不带参数的函数。
我们会将此指针设置为实际函数的地址,并在一段时间后通过指针执行该函数。函数指针是非常方便的东西,可以根据情况提供不同的函数来处理某些任务。
【讨论】:
void (SomeClass::*someMethod)();
这是一个指向“SomeClass”类成员函数的指针的声明,它接受并返回void。
【讨论】: