По последним данным, на рынке продается по крайней мере 2 768 942 книги о С++, не говоря уже о всевозможных курсах, обучающих программах, журналах и семинарах с коктейлями. И все же в этом изобилии наблюдается удручающее однообразие.
Многочисленные символы < и > вызывают изрядную путаницу, поскольку C++ не всегда
последователен. Вообще говоря, <Туре> следует указывать везде, кроме трех мест в объявлениях классов или определениях их функций:
1. За ключевым словом class в самом начале.
2. При указании имени конструктора.
3. При указании имени деструктора.
Аргументы конструкторов и деструкторов должны быть параметризованными, как и все использования имени класса за исключением трех указанных случаев. При любом использовании параметризованного типа или функции необходимо указывать параметр. Было бы намного проще, если бы C++ просто требовал присутствия параметра во всех случаях, но это же C++... Вдобавок можно сэкономить несколько символов в исходном тексте программы. В трех указанных ситуациях компилятор может сделать разумные предположения по поводу отсутствующих символов.
Просматривать полку книг о С++ в книжном магазине ничуть не интереснее, чем литературу по бухгалтерии. В сущности, все книги пересказывают одно и то же и отличаются разве что по весу и количеству цветов в диаграммах и таблицах.