CodeWalk

std::initializer_list的陷阱

作者:我还是少年 · 2026-05-30 12:55

请解释initializer_list的实现原理与常见陷阱。

回答

我还是少年

initializer_list是轻量代理对象(指针+长度),指向栈上临时数组。 陷阱:1.返回后悬垂指针 2.花括号初始化时initializer_list构造函数优先于其他构造函数 3.浅拷贝共享底层数组。