当前位置: 首页 > news >正文

hook和钩子函数

1.介绍

钩子函数(Hook Function) 本质上是一种回调callback机制,它允许程序在特定事件发生时执行用户自定义代码。一种实现方式。

Hook 是一种更广义的概念,指拦截或修改函数行为,而钩子函数是 Hook 的一种具体实现方式。

钩子函数 主要用于:

  • 回调机制(在事件发生时执行自定义代码)
  • 框架扩展(如 Qt 的 eventFilter()
  • 系统 Hook(拦截按键、鼠标等事件)

2.例子

回调机制。

#include <iostream>
#include <functional>

// 定义钩子函数指针
std::function<void(int)> HookFunction = nullptr;

// 触发事件时调用钩子
void DoSomething(int value) {
    std::cout << "Doing something with " << value << std::endl;
    
    // 如果有钩子函数,调用它
    if (HookFunction) {
        HookFunction(value);
    }
}

// 自定义钩子函数
void MyHook(int value) {
    std::cout << "Hook triggered! Value: " << value << std::endl;
}

int main() {
    // 设置钩子
    HookFunction = MyHook;

    // 触发事件
    DoSomething(42);

    return 0;
}

运行结果:

Doing something with 42
Hook triggered! Value: 42

http://www.dtcms.com/a/46512.html

相关文章:

  • zjbdt
  • overleaf嵌套缩进空格不成功的方法
  • 【TSF 文献阅读 02】Dlinear | Are Transformers Effective for Time Series Forecasting?
  • 力扣刷题DAY2(链表/简单)
  • 【deepseek第二课】docker部署dify,配置私有化知识库,解决网络超时,成功安装
  • 【网络安全】——协议逆向:揭开通信协议的神秘面纱
  • SpringBoot集成Mybatis(包括Mybatis-Plus)和日志
  • c++进阶--继承
  • 用友NC系列漏洞检测利用工具
  • 了解Java集合的概念和体系:Collection<T>、Collections与Stream的使用
  • 【中等】707.设计链表
  • 移动零
  • centos 下dockers部署surveyking-docker开源考试系统
  • 【数据结构与算法】Java描述:第一节:ArrayList顺序表
  • 使用watch监听route对象的变化
  • 【面试题】高并发场景下如何实现积分排行榜
  • R 语言科研绘图 --- 箱线图-汇总
  • 配置后端验证功能之validation
  • C++基础语法9——函数结构
  • Kotlin 5种单例模式
  • 了解什么是红黑树
  • 通过查询hive的元数据库中的表分区清单,拼写出来删除表分区的sql脚本
  • uniapp 中引入使用uView UI
  • PH热榜 | 2025-03-02
  • Sparsely-Gated Mixture-of-Experts Layer (MoE)论文解读与Pytorch代码实现
  • 大数据-236 离线数仓 - 会员活跃度 WDS 与 ADS 导出到 MySQL 与 广告业务 需求分析
  • 开启mysql的binlog日志
  • 【网络安全 | 渗透测试】GraphQL精讲一:基础知识
  • 高频 SQL 50 题(基础版)_1174. 即时食物配送 II
  • 随机播放音乐 伪随机