Skip to content

Latest commit

 

History

History
36 lines (24 loc) · 1.39 KB

class_template_argument_deduction_for_aggregates.md

File metadata and controls

36 lines (24 loc) · 1.39 KB

集成体クラステンプレートのテンプレート引数推論 [P1816R0]

  • cpp20[meta cpp]

このページはC++20に採用された言語機能の変更を解説しています。

のちのC++規格でさらに変更される場合があるため関連項目を参照してください。

概要

C++17で導入されたクラステンプレートのテンプレート引数推論は、コンストラクタ引数からテンプレート引数を推論するものであった。

C++20では、ユーザー定義のコンストラクタをもたない集成体クラステンプレートの初期化からクラステンプレート引数を推論できるようにする。

template <class T>
struct Point {
  T x;
  T y;
};

Point p1{3.0, 4.0}; // C++17:NG C++20:OK

参照