logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

STL下常见容器底层数据结构

容器底层数据结构随机访问头部插入/删除中间插入/删除尾部插入/删除查找复杂度是否有序vector动态数组O(1)O(n)O(n)O(1)*否deque分段连续数组O(1)O(1)O(n)O(1)O(n)否list双向链表不支持O(1)O(1)O(1)O(n)否map/set红黑树不支持O(log n)O(log n)O(log n)O(log n)是哈希表不支持平均O(1)否。

#c++#开发语言
C++ lambda表达式

优先使用自动推导:除非必要(如递归或需要特定返回类型),否则让编译器推导返回类型。小心捕获列表如果在多线程环境或异步回调中使用,尽量避免[&],防止悬空引用。明确列出需要的变量(如[x, &y])通常比隐式捕获([=][&])更安全且可读性更好。性能考量Lambda 本身几乎没有运行时开销(通常会被内联优化)。但如果将其存入,会引入动态分配和虚函数调用的开销。在对性能极度敏感的场景(如高频交易、游

#c++#开发语言
C++ 单例模式

在现代 C++ 开发中,请始终使用基于“函数内静态局部变量”的实现方式(Meyers' Singleton)。它简洁、高效、线程安全且符合 RAII(资源获取即初始化)原则。除非你有极其特殊的理由(如需要在main函数之前初始化,这通常被视为坏味道),否则不要使用指针或复杂的锁机制来实现单例。

#c++#单例模式#java
到底了