との条件付きでのstd ::条件のようですが、定義されていないクラスに対してコンパイル時のエラーなし、のstd :: enable_if_and_elseのようなものを作成することも可能です。ここでのstd :: SFINAE
例です。
static constexpr bool myExpr = true;
struct A {};
struct B;
struct C :
std::conditional<myExpr,
A,
B>::type
{}; // Compilation error: B is declared but not defined
struct D :
enable_if_else<myExpr,
A,
B>::type
{}; // It works
おかげ
は' 'true'を可能myExpr'ないでしょうか? – Quentin
はい、コピーと貼り付けが間違っています。あなたが正しい。おかげ – user3770392
いずれの場合においても、[Iがエラーを再現できない(http://coliru.stacked-crooked.com/a/5ce6197045347aed)。どのコンパイラを使用していますか? – Quentin