会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
一叶扁舟
2019.08.23 慢慢积累,总会变强大的 2024.07.09 温故而知新 可以为师矣
博客园
首页
新随笔
联系
管理
[置顶]
近期在看
摘要: 1. C++ Primer 2. 深入理解 FFmpeg 3. 鸿蒙 sdk 开发 4. LLVM Core Libraries GCC和 LLVM 都是三段式编译的工作原理,分别是前端、优化器和后端。 前端负责解析源代码,检查语法错误,并将其翻译为抽象的语法树; 优化器对这一中间代码进行优化,试图
阅读全文
posted @ 2024-07-30 16:24 strive-sun
阅读(25)
评论(0)
推荐(0)
[置顶]
调试工具汇总
摘要: 1. dependency walker 用于查看 dll 之间的依赖关系 2. EXE Explorer 查看 exe 或者 dll 的 PE 信息 可以查看时间戳,看编译时间是否正确 3. hash.exe 查看文件的 md5 是否一致 可以用来检查文件是否完整 4. clumsy 0.2 cl
阅读全文
posted @ 2023-12-25 12:02 strive-sun
阅读(105)
评论(0)
推荐(0)
[置顶]
C++ 11
摘要: 书籍: 现代 C++ 教程 日常查阅资料看到的有用文章链接: C++11新特性总结(相比C++98) C++ 智能指针的正确使用方式 对于智能指针的使用,实际上是对所有权和生命周期的思考,一旦想明白了这两点,那对智能指针的使用也就得心应手了。 https://suzulang.com/try-lib
阅读全文
posted @ 2021-08-23 23:06 strive-sun
阅读(79)
评论(0)
推荐(0)
2025年9月3日
从 Qt 角度理解 ArkUI 的控件方法
摘要: ArkUI组件回调函数属性详解 本文档从 Qt 开发者的角度详细介绍 ArkUI 中组件回调函数属性的使用方法,通过对比分析帮助 Qt 开发者快速理解 ArkUI 的组件开发模式。 Qt vs ArkUI 深度对比 从 Qt 开发者的角度来理解 @ComponentV2,可以把它类比为 Qt 中的
阅读全文
posted @ 2025-09-03 11:34 strive-sun
阅读(10)
评论(0)
推荐(0)
2025年6月17日
Windows 上 cmakejs 配置 asan
摘要: 1. 下载 Detours 并安装 git clone https://github.com/microsoft/Detours cd Detours nmake 2. 如果是 x64 项目,则打开 x64 Native Tools Command Prompt 命令行窗口,并找到 bin.X64
阅读全文
posted @ 2025-06-17 11:20 strive-sun
阅读(42)
评论(0)
推荐(0)
2025年6月5日
napi_call_threadsafe_function 实现跨线程获取数据
摘要: 前提: napi_call_threadsafe_function 一般是在处理回调事件时才使用,在 native 中将回调事件传递给 JS 中,由 JS 根据这些回调事件进行后续的动作(音频的播放、暂停,UI 的显示场景等等) 这里的 native 一般是指 C/C++ 层的回调,通常该回调会在自
阅读全文
posted @ 2025-06-05 11:53 strive-sun
阅读(157)
评论(0)
推荐(0)
2025年5月19日
分析 vscode 运行 node.js 闪退时的场景
摘要: 场景:使用 cmakejs 运行 js 代码时,出现了闪退问题 分析:需要加载相关 pdb 文件,如何使用 vscode 调试 js 代码,可以参考: 使用 vscode 调试 nodejs 代码 从弹出上后,触发了 abort 导致运行中断,结合控制台给出的信息 D:\a\_work\1\s\sr
阅读全文
posted @ 2025-05-19 20:22 strive-sun
阅读(40)
评论(0)
推荐(0)
2025年4月29日
运行 js 文件出现 Error: A dynamic link library (DLL) initialization routine failed 错误
摘要: 概要 既上次出现 Error: The specified module could not be found. 问题之后,又出现了新的问题 process.dlopen 错误处理 运行 js 文件时会出现 node:internal/modules/cjs/loader:1340 return p
阅读全文
posted @ 2025-04-29 19:07 strive-sun
阅读(53)
评论(0)
推荐(0)
2025年4月27日
dlsym 动态加载分析
摘要: 为什么要存储函数的指针的地址,直接存储函数的地址不可以吗 第一:dlsym 返回的是 void*,一般在取函数指针时会保留函数的类型,如果直接存储函数的地址会丢失掉函数类型 // 使用函数指针地址可以保留原始类型信息 int (*func_ptr)(int, int); void** func_pt
阅读全文
posted @ 2025-04-27 18:25 strive-sun
阅读(62)
评论(0)
推荐(0)
2025年4月25日
napi_create_async_work 和 napi_create_threadsafe_function 的使用场景分析
摘要: 原理 napi_create_async_work:Node.js 不适合处理耗时的操作,而 napi_create_async_work 适合利用 C/C++ 层提供的多线程来处理耗时操作 napi_create_async_work 可以通过 N-API 使用 Libuv 线程池 napi_cr
阅读全文
posted @ 2025-04-25 12:22 strive-sun
阅读(215)
评论(0)
推荐(0)
2025年3月19日
字节序与字符串
摘要: 在编程中,二进制数据和字符串数组是不同类型的数据结构,它们有不同的用途和表示方式。 二进制数据: 表示方式:通常是以字节序列(bytes)的形式存在,比如说,文件内容、图像数据、网络数据包等。 用途:用于处理非文本数据,需要精确控制数据的格式和内容,比如读写文件、图像处理、网络编程等。 操作:在许多
阅读全文
posted @ 2025-03-19 15:59 strive-sun
阅读(25)
评论(0)
推荐(0)
OpenGL 学习之路
摘要: 教程链接: 你好,三角形 着色器
阅读全文
posted @ 2025-03-19 12:05 strive-sun
阅读(9)
评论(0)
推荐(0)
2025年3月7日
C++ 前向声明案例
摘要: C++ 前向声明(Forward Declaration)详解 什么是前向声明? 前向声明是C++中的一个重要概念,它允许我们在不包含完整类定义的情况下声明一个类的存在。通过前向声明,我们可以: 告诉编译器某个类型的名称是一个类型 声明指向该类型的指针或引用 声明以该类型作为参数或返回值的函数 前向
阅读全文
posted @ 2025-03-07 17:22 strive-sun
阅读(39)
评论(0)
推荐(0)
下一页
公告