c++ - 使用 __event 在 C++ 中处理事件
问题描述
我正在尝试使用__event
、__hook
和来学习 c++ 中的事件处理__raise
。我在任何地方都找不到一个简单的代码块来演示它的基础知识。
这是我期望它的工作方式:
class C // Class with event
{
public:
__event void DoThing(); // Event method
};
void handler() // Event handler
{
std::cout << "Handler" << std::endl;
}
int main()
{
C c;
__hook(&C::DoThing, c, handler); // Subscribe the handler to the event
__raise c.DoThing(); // Raise the event
}
尽管此代码引发了以下“错误”:
尽管如此,它仍然可以编译和运行,但没有打印任何内容。我究竟做错了什么?作为一个额外的问题,我将如何更改以下内容以获取 lambda 事件处理程序?
解决方案
推荐阅读
- java - 如何在 FragmentContainer 中设置动态名称属性?
- python - 如何取消堆叠期间列
- regression - 小型单膨胀数据集
- spring - 使用 Spring hibernate / jpa 如何使用多个搜索条件查询多个列
- java - 是否可以使用 Java Poet 将方法添加到类中?
- nuxt.js - 具有 JIT 模式的 TailwindCSS 不应用 .yaml 文件中的类
- pytorch - 类型错误:无法使用 opset 解析运算符“形状”:ai.onnx v11
- java - 带有模式注册表的融合 kafka 上的 Json 消息验证
- python - 如何使用 selenium 读取 html 页面中的所有图像 alt?
- javascript - 来自空/NULL 的 AJAX 查询发布数据