テンプレート名がテンプレートの引数リストの一部として解釈されると大なり演算子をとして最初の左角かっこはありません。かっこで囲まれていない場合は開始山かっこがテンプレート引数リストの終わりとして解釈されると最初の > は入れ子になったテンプレートの一部でまたは static_cast<int> のようなテンプレート スタイルのキャスト式の一部です。
山かっこ (<>) が配置にテンプレートの構文エラーが発生します。>>> と - > などの演算子と山かっこを区別するために適切な間隔とかっこを使用してください。次に例を示します。
TempClass< float, a > b ? a : b > test1;
次のように書き換える必要があります :
TempClass< float, (a > b ? a : b) > test1;
同様にテンプレートの引数として山かっこを使用するマクロを使用する場合注意を支払ってします。