Shablonlarni yozish qoidalari: Funksiya shablonlari funksiya hisoblanmaydi, shuning uchun ham ular virtual bo’lishi mumkin emas. Sinf shablonlari statik elementlar, do’stona funksiyalar va sinflarni o’z ichiga olishi mumkin. Shablonlar meros qoldiradi. Ular shablonlar va odatiy sinflardan olinishi, shuningdek, shablonlar va oddiy sinflar uchun tayanch shablon bo'lishi mumkin. Barcha sinf yoki funksiya shablonlari «template» so’zi bilan boshlanadi. Ushbu kalit so’zdan keyin shablon parametrlarini tavsiflash uchun burchakli < > qavslar qo’yiladi. Har bir parametrdan oldin «class» yoki «typename» kalit so’zlari ishtirok etadi. Bu kalit so’zlarning yo’qligi kompiliyator tomonidan sintaksis xato sifatida qaraladi.