11 2024 档案

摘要:文章目录 智能指针的使用原因及场景分析为什么需要智能指针?异常抛出导致的资源泄漏问题分析 智能指针与RAIIC++常用智能指针 使用智能指针优化代码优化后的代码优化点分析 析构函数中的异常问题解决方法 RAII 和智能指针的设计思路详解什么是 RAII?RAII 的工作原理 智能指针的设计思路RAI 阅读全文
posted @ 2024-11-16 18:25 KevinBee 阅读(20) 评论(0) 推荐(0) 编辑
摘要:文章目录 异常的概念异常的抛出与捕获栈展开(Stack Unwinding)四、总结 查找匹配的处理代码 异常的重新抛出三、模拟示例:服务模块中的异常处理四、总结 C++ 异常规范详解一、C++98异常规范二、C++11及其后的异常规范 (`noexcept`)三、使用`noexcept`的场景与注 阅读全文
posted @ 2024-11-16 15:16 KevinBee 阅读(13) 评论(0) 推荐(0) 编辑
摘要:文章目录 `function``std::function` 的基本语法使用 `std::function` 包装不同的可调用对象`function`包装普通成员函数为什么要传入 `this` 指针参数?传入对象指针与传入对象实例的区别 例题 :150. 逆波兰表达式求值 - ⼒扣(LeetCode 阅读全文
posted @ 2024-11-14 08:15 KevinBee 阅读(11) 评论(0) 推荐(0) 编辑
摘要:默认的移动构造和移动赋值 在 C++11 之前,编译器会为每个类自动生成默认的构造函数、析构函数、拷贝构造函数、拷贝赋值运算符等函数,以实现对象的创建、销毁和拷贝操作。但拷贝操作会复制整个对象的数据,效率低,尤其是在处理大对象或动态分配的资源时。为了解决这一问题,C++11 引入了移动语义(Move 阅读全文
posted @ 2024-11-10 17:05 KevinBee 阅读(9) 评论(0) 推荐(0) 编辑
摘要:lambda 表达式(Lambda Expressions)作为一种匿名函数,为开发者提供了简洁、灵活的函数定义方式。相比传统的函数指针和仿函数,lambda 表达式在简化代码结构、提升代码可读性和编程效率方面表现出色。 Lambda 表达式的基本语法 在 C++ 中,lambda 表达式的格式如下 阅读全文
posted @ 2024-11-10 17:03 KevinBee 阅读(19) 评论(0) 推荐(0) 编辑
摘要:文章目录 基本语法及原理可变参数模板的基本语法参数包的两种类型可变参数模板的定义 `sizeof...` 运算符可变参数模板的实例化原理可变参数模板的意义 包扩展包扩展的基本概念包扩展的实现原理编译器如何展开参数包包扩展的高级应用 `emplace` 系列接口`emplace_back` 和 `em 阅读全文
posted @ 2024-11-09 13:27 KevinBee 阅读(16) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示