Umístění úhlová závorka
První otevírací závorka po název šablony je interpretován jako součást seznamu argumentů na šablonu, nikoli jako větší-než operátor.První > Po otevření úhlová závorka interpretována jako konci seznamu argumentů v šabloně, pokud je uzavřena v závorkách, je součástí vnořené šablony nebo je součástí šablony stylu výrazem přetypování jako static_cast<int>.
Chybné umístění lomených závorek (<>) způsobí, že mnoho chyb syntaxe šablony.Přesvědčte se, zda použít správné mezery a závorky rozlišit lomené závorky z operátorů jako >, >> a ->.Příklad:
TempClass< float, a > b ? a : b > test1;
by měl být přepsána jako:
TempClass< float, (a > b ? a : b) > test1;
Podobně věnujte zvláštní pozornost při použití makra lomených závorek jako argumenty šablony.