上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 33 下一页
摘要: git branch git branch 是 Git 中用于管理分支的一个核心命令。分支(branch) 是 Git 用来实现并行开发、隔离特性和版本控制的基本机制。可以把分支理解为项目历史的「时间线快照」,每个分支都是提交记录的一条路径。 核心概念 分支是什么? Git 中的分支本质上是一个指向 阅读全文
posted @ 2025-06-25 12:53 _Sylvan 阅读(43) 评论(0) 推荐(0)
摘要: git rebase git rebase 的作用是:将当前分支的提交,重新“安置”在目标分支的末尾上,从而实现更清晰的提交历史。 它并不会简单地“移动分支指针”,而是会逐个复制提交,生成新的 commit ID。 原理图示 假设当前有这样的提交历史: A B C (main) \ D E (fea 阅读全文
posted @ 2025-06-25 12:52 _Sylvan 阅读(43) 评论(0) 推荐(0)
摘要: git 常用命令 基础配置 命令 说明 git config --global user.name "Your Name" 设置用户名 git config --global user.email "your.email@example.com" 设置邮箱 git config --global c 阅读全文
posted @ 2025-06-25 12:52 _Sylvan 阅读(16) 评论(0) 推荐(0)
摘要: C++ Pimpl Pimpl(Pointer to IMPLementation),也叫作编译防火墙,是一种在 C++ 中常用的设计技术,用于实现封装和降低编译依赖。 核心目标 隐藏实现细节:实现对类私有成员的完全封装。 减少编译依赖和耦合:避免修改内部实现后触发大规模重编译。 二进制兼容(ABI 阅读全文
posted @ 2025-06-25 12:51 _Sylvan 阅读(85) 评论(0) 推荐(0)
摘要: Qt多线程简介 Qt 多线程编程是 Qt 框架中非常重要的一部分,适用于需要在后台处理耗时任务而不阻塞主线程(UI线程)的应用场景。 Qt 多线程的几种方式 方法 类名 场景 描述 方式一 QThread 子类化 学习演示 继承 QThread 并重写 run() 方法,手动启动线程 方式二 QOb 阅读全文
posted @ 2025-06-25 12:49 _Sylvan 阅读(72) 评论(0) 推荐(0)
摘要: Qt UI构建流程 Qt 的 UI 构建流程可以分为两种方式: 使用 Qt Designer(.ui 文件)+ 自动生成代码 使用 C++ 代码手动构建 UI(纯代码方式) 使用 Qt Designer 构建 UI(推荐方式) Qt Designer 是什么?能做什么? Qt Designer 是 阅读全文
posted @ 2025-06-25 12:49 _Sylvan 阅读(368) 评论(0) 推荐(0)
摘要: 自定义信号和槽 信号链式传递 在 Qt 中,信号链式传递(Signal Chaining / Signal Relay)是指: 一个对象接收到信号后,在对应的槽函数中再次发出另一个信号,从而实现多个对象之间信号的逐级传递或响应链式处理。 这种模式可以让多个模块间解耦通信,适用于状态同步、事件广播、控 阅读全文
posted @ 2025-06-25 12:49 _Sylvan 阅读(43) 评论(0) 推荐(0)
摘要: Qt_ui_headerlabel被覆盖问题总结 ProTreeWidget 类定义与实现(自定义 QTreeWidget) protreewidget.h #ifndef PROTREEWIDGET_H #define PROTREEWIDGET_H #include <QTreeWidget> 阅读全文
posted @ 2025-06-25 12:47 _Sylvan 阅读(18) 评论(0) 推荐(0)
摘要: 手动编译Qt项目 Qt 6.9.0 的 MinGW 64-bit 控制台环境里,默认会配置好环境变量,包含: moc uic rcc g++(MinGW 编译器) 直接打开 Qt 控制台(Qt 6.9.0 (MinGW 13.1.0 64-bit) Command Prompt),执行编译命令。 目 阅读全文
posted @ 2025-06-25 12:46 _Sylvan 阅读(140) 评论(0) 推荐(0)
摘要: constexpr 关键字 constexpr 表示“编译期常量”,即表达式、变量或函数的值必须能在编译期被求出来。 用途总览 场景 示例 意义 修饰变量 constexpr int a = 5; a 是编译期常量 修饰函数 constexpr int add(int a, int b) 函数在编译 阅读全文
posted @ 2025-06-25 12:44 _Sylvan 阅读(57) 评论(0) 推荐(0)
摘要: C++ 访问控制与继承 访问控制 C++ 提供三种访问控制修饰符,用于控制类成员(属性和方法)的可见性: 访问控制符 类内部 派生类 外部代码 public 可以 可以 可以 protected 可以 可以 不可以 private 可以 不可以 不可以 class Base { public: in 阅读全文
posted @ 2025-06-25 12:44 _Sylvan 阅读(21) 评论(0) 推荐(0)
摘要: C++ invoke std::invoke 是 C++17 引入的一个工具函数,用来以统一的方式调用任意可调用对象(函数、函数指针、成员函数指针、函数对象、lambda 表达式等),它会自动处理调用方式的差异,提供一种「泛用式」调用接口。 基本语法 在模板编程中,可能会面对不同类型的可调用对象。 阅读全文
posted @ 2025-06-25 12:42 _Sylvan 阅读(122) 评论(0) 推荐(0)
摘要: C++ bind std::bind 是 C++11 引入的一个函数适配器,用于创建一个可调用对象,提前绑定部分参数(也叫“占位绑定”或“柯里化”)。 它的本质是返回一个新的函数对象,这个对象封装了原函数+部分参数,等到调用时再传入剩余参数。 std::bind(可调用对象, 参数1, 参数2, . 阅读全文
posted @ 2025-06-25 12:42 _Sylvan 阅读(47) 评论(0) 推荐(0)
摘要: C++ 完美转发 完美转发是指:函数模板接收到的参数在传递给其他函数时,保持其原本的“值类别”(即左值或右值)。 常用于泛型函数模板中,用于“转发参数给其他函数”时,避免复制或不必要的拷贝构造。 C++11 引入 std::forward 和 && 引用折叠来实现完美转发。 关键 使用万能引用: t 阅读全文
posted @ 2025-06-25 12:42 _Sylvan 阅读(61) 评论(0) 推荐(0)
摘要: C++ allocator allocator 是 C++ 标准库定义的一个内存分配器模板类,位于 <memory> 头文件中。它负责为容器(如 std::vector, std::list 等)分配和释放内存,以及构造和析构对象。 简单来说,allocator 把“内存管理”和“对象构造/析构”工 阅读全文
posted @ 2025-06-25 12:38 _Sylvan 阅读(205) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 33 下一页