
operator
std::shared_ptr不实现写时复制(COW),仅管理对象指针的引用计数;COW需在对象层面手动实现,且须处理线程安全与统一写入口逻辑。
PSR-2和PSR-12均未强制规定$this->后是否允许空格,两种写法($this->name与$this->name)在语法和规范层面均合法,但前者是社区公认的可读性更优、更符...
shared_ptr循环引用发生于双方相互持有导致引用计数无法归零;weak_ptr通过不增加引用计数并配合lock()安全访问来破环,需在非拥有关系端使用。
推荐使用delve断点调试替代日志打印,配置dlvLoadConfig防卡死,结合pprof定位性能热点,用runtime.Stack和-race快速诊断死锁与竞态,本地测试Operator/Webh...
std::unordered_map默认用链地址法且不可替换为开放定址法;手写链地址法需桶数组+链表、质数容量与负载因子控制;开放定址法需删除标记和探测策略,二者适用场景不同。
unique_ptr不能复制只能移动,出生即绑定资源、析构自动释放;最安全创建方式是std::make_unique,支持数组和自定义删除器,访问前需判空,release/reset控制释放,误用易致...
std::back_inserter是包装push_back()的迭代器适配器,不存储数据,需配合可增长容器使用,依赖目标容器已存在且非常量,仅支持单向写入。
AddressSanitizer默认不检测内存泄漏,需显式启用LeakSanitizer:编译加-fsanitize=address,leak、运行前设ASAN_OPTIONS=detect_leak...
size()返回当前元素个数,capacity()返回已分配内存可容纳的元素总数;resize(n)改变size()并可能初始化新元素,reserve(n)仅预分配capacity()不改变size(...
std::optional用于替代魔数和非法状态,强制显式处理有值/无值情况,避免隐式假设;需判空后访问,支持value_or回退,不适用于动态内存管理或需错误信息的场景。