C++ の名前付き要件: ImplicitLifetimeType
From cppreference.com
注記: 標準では、この名前のついた要件は定義されていません。これはコア言語によって定義された型カテゴリです。一貫性のために、名前付き要件としてここに含められています。
[編集] 要件
以下の型はまとめて暗黙的ライフタイム型と呼ばれます
- スカラ型
- 暗黙的ライフタイムクラス型
- 配列型
- これらの型のcv修飾版
[編集] 注釈
特定の操作は、未定義動作を防ぐために、暗黙的ライフタイム型のオブジェクトを暗黙的に作成し、そのライフタイムを開始することがあります。ただし、そのような操作は、それ自体が暗黙的ライフタイム型ではない、そのようなオブジェクトのサブオブジェクトのライフタイムを開始することはありません。
[編集] 欠陥報告
以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。
| DR | 適用対象 | 公開された動作 | 正しい動作 |
|---|---|---|---|
| CWG 2489 | C++20 | char 配列のライフタイムを開始する操作は、オブジェクトを暗黙的に作成します | それはしません |