- 博客(16)
- 收藏
- 关注
原创 C++中的三五法则
析构函数 ~T()拷贝构造函数 T(const T&)拷贝赋值运算符 T& operator=(const T&)析构函数 ~T()拷贝构造函数 T(const T&)拷贝赋值运算符 T& operator=(const T&)移动构造函数 T(T&&) noexcept移动赋值运算符 T& operator=(T&&) noexcept。
2025-08-08 09:45:32
8
原创 lambda函数笔记(C++ 11)
C++中的lambda函数和std::function提供了强大的函数封装能力。lambda函数支持匿名定义、变量捕获、参数传递,可与STL算法配合使用,并支持mutable修饰符修改捕获变量。std::function作为通用可调用对象封装器,能够存储函数指针、lambda表达式和bind表达式,实现类型安全的运行时多态调用。两者结合使用,可以构建灵活的回调机制和函数对象体系,提高代码的可复用性和表达力。 (字数:149)
2025-07-19 08:30:00
10
原创 std:thread知识点笔记 C++ 11
是 C++11 提供的线程类,位于<thread>头文件中。创建线程时,可以将一个可调用对象(函数、lambda 表达式、函数对象等)作为参数传入构造函数。// 创建线程并运行t.join();// 等待线程结束return 0;
2025-07-14 17:00:00
18
原创 C++ 智能指针
可以指定自定义的删除逻辑,例如用于资源类型非new/deletedelete ptr;特点说明优点安全、高效、无共享风险缺点无法共享所有权适用单一所有者模型、资源唯一管理者替代选择若需共享所有权,应使用在 C++ 中,是一种非常常见且推荐的资源管理方式,尤其适用于需要存储一组动态分配对象、并希望自动管理其生命周期的场景。它也常用于多态资源管理中,即基类指针指向派生类对象的情况。若资源非new/delete分配(如系统资源、文件句柄等),可以为unique_ptr。
2025-07-07 22:43:44
13
原创 noexcept
noexcept是 C++11 引入的关键字,用于指定函数是否会抛出异常。它可以帮助编译器进行优化,并提高代码的安全性和可维护性。移动语义控制:在移动构造函数和移动赋值操作符中使用 noexcept 可以确保容器类选择更高效的实现路径。如果移动构造函数不是 noexcept,则标准库容器可能会优先选择复制而不是移动操作以确保异常安全。如果你想让某个函数保证不会抛出异常,可以将其声明为 [noexcept]项目说明关键字noexcept目的显式声明函数不会抛出异常优点。
2025-07-03 17:00:00
13
原创 move_if_noexcept
摘要:std::move_if_noexcept是C++11引入的异常安全工具函数,定义在<utility>中。它根据类型特性决定返回类型:若移动构造函数标记为noexcept则返回右值引用(允许移动),否则返回左值引用(强制拷贝)。该机制被STL容器(如vector扩容)广泛用于平衡性能与异常安全。使用时应为不抛异常的移动构造函数添加noexcept声明,以充分发挥其优化作用
2025-06-30 07:00:00
19
原创 windows下常用的cmd命令
以上命令适用于 CMD 和 PowerShell,部分命令在 PowerShell 中可能有更强大的替代命令(如。type <文件名>echo <字符串>
2025-06-27 07:00:00
292
原创 throw&runtime_error
它用于表示在程序运行期间发生的、无法在编译时预测的错误。抛出一个异常对象,以通知调用栈中的上层代码进行处理。关键字用于抛出异常。当程序遇到错误或异常情况时,可以使用。是 C++ 标准库中定义的一个异常类,位于头文件。),但在C++17中已被弃用,推荐使用。重新抛出当前捕获的异常,传递给外层的。如果需要更具体的错误类型,可以从。,可以实现更健壮的错误处理机制。旧版本C++支持异常规范(如。
2025-06-26 09:03:41
73
原创 thread_local
C++中的thread_local是线程局部存储(TLS)的存储类说明符,它为每个线程创建独立的变量实例,避免多线程数据竞争。主要特点:1)确保线程安全,无需额外同步机制;2)变量生命周期与线程绑定;3)适用于全局变量、静态成员变量和动态分配场景。使用示例包括基本线程变量、类静态成员和动态内存管理。注意事项:初始化/销毁顺序不可控、性能开销需权衡。该特性简化了线程安全变量的实现,是并发编程的重要工具。
2025-06-25 10:45:00
239
原创 pipeline使用
pipeline是 Hugging Face库中的一个高级接口,旨在简化自然语言处理(NLP)任务的实现。它提供了一种统一的方式来加载预训练模型并执行各种任务,而无需手动处理模型的加载、预处理和后处理步骤。以下是pipeline。
2025-03-21 20:54:14
279
原创 C++ 环境搭建-cmake的安装和使用
版本:VMware 10.0.1 build-1379776运行系统 ubuntu系统版本:ubuntu 16.04 LTS。
2025-02-07 06:00:00
698
原创 RAII (Resource Acquisition Is Initialization) 详解
提供自动的资源管理确保异常安全使代码更加简洁和可靠减少资源泄漏的风险避免手动资源管理的错误提高代码的可维护性确保程序的稳定性和可靠性。
2025-02-06 08:50:54
422
原创 主机windows系统,虚拟机安装ubuntu无线网络连接配置
主机系统:windows系统虚拟机版本:VMware 10.0.1 build-1379776ubuntu系统版本:ubuntu 16.04 LTS。
2024-08-26 23:27:28
1197
原创 Deepin安装perf工具
linux-tools-common 是一个由 Linux 内核源代码中的工具链生成的软件包,里面包含perf工具。由于第三步执行的结果显示,版本是5.15,所以命令中是5.15。如果执行失败可以查看另外一篇文章解决该问题。Deepin安装perf工具主要命令。查看安装的perf工具是否安装成功;会输出你的内核版本,确保安装的。工具与你的内核版本相匹配。查看自己的内核版本,
2024-06-18 07:00:00
469
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人