Położenie nawiasu kątowego
Pierwszym otwarciu nawiasów po nazwie szablonu jest interpretowane jako część szablonu listy argumentów, nie jako operator większe-niż.Pierwszy > po otwierającym nawiasie ostrym jest interpretowane jako koniec listy argumentów szablonu, o ile nie jest to ujęte w nawiasy, jest częścią zagnieżdżonego szablonu lub jest częścią wyrażenia rzutowania szablonu stylu, takiego jak static_cast<int>.
Złe rozmieszczenie nawiasów ostrych (<>) powoduje wiele błędów składni szablonu.Należy upewnić się, że używane są odpowiednie odstępy i nawiasy odróżnienia nawiasów ostrych od operatorów takich jak >, >> i —>.Na przykład:
TempClass< float, a > b ? a : b > test1;
należy przepisać jako:
TempClass< float, (a > b ? a : b) > test1;
Podobnie należy zwrócić dodatkową uwagę, przy użyciu makr używających nawiasy ostre jako argumenty szablonu.