news 2026/11/2 14:55:48

C++仿C#实现事件处理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++仿C#实现事件处理
测试
#include "beacon/beacon.hpp" #include <cstdio> #include <thread> class mouseEvent : public beacon::args { public: mouseEvent(int x, int y) : x(x), y(y) {} int x, y; }; class object : public beacon::sender { public: }; class mouseHandler : public beacon::multi_handler { public: }; class Button { public: void on_event(beacon::sender* sender, beacon::args* args) { auto event = args->to<mouseEvent>(); printf("Mouse event at %d, %d\n", event.x, event.y); } }; int main(int argc, char** argv) { mouseEvent event(10, 20); object sender; Button button; mouseHandler handler; handler.addListener<mouseEvent>(beacon::callback::bind(&Button::on_event, &button)); handler.raise(&sender, &event); beacon::interval inter; inter.set(1000, [](const char* msg){ puts(msg); }, "Hello, World!"); std::this_thread::sleep_for(std::chrono::milliseconds(10000)); return 0; }

g++ example.cpp -o test.exe

输出
Mouse event at 10, 20 Hello, World! Hello, World! Hello, World! Hello, World! Hello, World! Hello, World! Hello, World! Hello, World! Hello, World! Hello, World! Hello, World!
编译错误

参考

GitHub - ImanolFotia/beacon: Beacon is a multiparadigm C++ event management library with focus on fast and simple integration

C++ 仿QT信号槽二_c++模仿qt里面的信号与槽,做一个消息不同类消息传递-CSDN博客

自定义窗口事件循环系统-CSDN博客


创作不易,小小的支持一下吧!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/11/2 14:51:52

自研轻量级服务监控雷达:主动探活、负载感知与告警实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/11/2 14:51:48

PLFM_RADAR:可编程线性调频雷达完整信号处理链路解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/11/2 14:51:31

用Python自建平台雷达:网页变化监控与自动通知实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/11/2 14:48:06

Appium+Python+Unittest移动端自动化测试实战指南

1. 为什么选择AppiumPythonUnittest组合 移动端UI自动化测试领域存在多种技术方案&#xff0c;但AppiumPythonUnittest的组合在测试圈内一直保持着高人气。这套技术栈的核心优势在于其跨平台特性与Python生态的结合。Appium基于WebDriver协议扩展&#xff0c;支持iOS、Android和…

作者头像 李华
网站建设 2026/11/2 14:47:49

AI根底座:构建计算架构的核心竞争力

1. AI时代的底座之争&#xff1a;为什么根底座才是真正的护城河最近业内有个现象特别有意思&#xff1a;阿里、地平线这些大厂都在疯狂布局所谓的"上层底座"。但作为一个在AI基础设施领域摸爬滚打多年的老兵&#xff0c;我越来越清晰地认识到——真正决定胜负的&…

作者头像 李华
网站建设 2026/11/2 14:47:28

微电网动态定价与优化调度:Stackelberg博弈与CVaR方法

1. 项目概述&#xff1a;微网动态定价与优化调度策略 这个项目探讨的是在微电网环境下&#xff0c;如何通过合作型Stackelberg博弈和条件风险价值&#xff08;CVaR&#xff09;方法实现动态定价和优化调度。简单来说&#xff0c;就是建立一个智能的电力交易系统&#xff0c;让电…

作者头像 李华