Implicit creation of objects for low-level object manipulation
8 months ago
- #Object Lifetime
- #Memory Management
- #C++
- 通过为特定类型提出隐式对象创建方案来解决CWG2325问题
- 将具有平凡构造函数或析构函数的类型定义为隐式生命周期类型
- malloc、memcpy和memmove等操作会在指定存储中隐式创建对象
- 引入std::start_lifetime_as以便在现有存储中直接创建对象
- 修改伪析构函数调用以结束对象生命周期,这将影响常量表达式
- 建议将解决方案拆分为核心语言修改和标准库扩展两部分
- 包含对C++标准多个章节的措辞更新