メタ関数とは? メタ関数とは、コンパイル時に型情報を取得できる関数のようなもの 実際には、関数の形を取らず、クラスになっていることがほとんどだが 関数にすることもできる 例えば型Tと型Uが同一かどうかを確かめたい場合は とすれば is_sameはT,Uが同じ型ならネストされたメンバ変数valueはtrue T,Uが違う型ならfalseを返す 他には、どのようなことができるのか? 標準ライブラリを見ていこう! 標準ライブラリ<type_traits>のメタ関数一覧 メタ関数はC++11から追加された標準ライブラリ<type_traits>に定義されている C++14ではis_nullptr とis_finalが仲間入りした C++17からはis_literal_type、が非推奨になる また、 has_unique_object_representations、 is_swappable_w