最終更新日時(UTC):
が更新

履歴 編集

入れ子名前空間定義でのインライン名前空間 [P1094R2](C++20)

概要

C++17で、入れ子の名前空間をnamespace ns1::ns2::ns3 {}のように簡易的に定義できるようになったが、インライン名前空間の指定はできなかった。

C++20では、namespace ns1::inline ns2::ns3 {}のように、入れ子名前空間を一度に定義する場合でも一部の名前空間をインラインの指定をできるようにする。

以下の定義は、

namespace ns1::inline ns2::ns3 {
  class X;
}

以下と等価である:

namespace ns1 {
inline namespace ns2 {
namespace ns3 {
  class X;
}}}

関連項目

参照