Правила іменування
Свайпніть щоб показати меню
Хороші та погані іменування
Як і змінні, параметри шаблонів можна називати як завгодно. Однак дотримання конвенцій іменування значно підвищує читабельність і підтримуваність коду. Нижче наведено деякі хороші та погані практики, які варто враховувати.
main.cpp
1234template<typename T> // <- Actually a good naming void myTemplate() { // Function implementation }
Можливо, ви замислювалися, чому T вважається кращим вибором імені, ніж Type, хоча другий варіант здається зрозумілішим. Причина проста: T — це загальноприйнята конвенція, що означає Type. Вона одразу вказує, що параметр шаблону представляє тип, і є знайомою більшості розробників. Також часто використовують U або V, якщо T вже використано.
Описові імена
Коли у вас є кілька параметрів шаблону, і їхнє призначення не є очевидним, рекомендується використовувати описові імена з префіксом T.
main.cpp
1234template<typename TKey, typename TValue> void map() { // Function implementation }
Якщо переглянути документацію до деяких шаблонів, можна помітити, що деякі розробники додають підкреслення (_) перед параметром типу для більшої виразності. Ви також можете використовувати цю практику. Однак найважливіше — дотримуватися послідовності у всьому коді. Оберіть стиль іменування, який вам підходить, і дотримуйтеся його.
class та typename
І class, і typename використовуються у визначеннях шаблонів. У цьому контексті вони взаємозамінні.
main.cpp
12345template <class T> void first_template(T param) { /* ... */ } template <typename T> void second_template(T param) { /* ... */ }
Історично ключове слово class було єдиним варіантом для визначення параметрів шаблону. Тому ви можете зустріти це ключове слово в старому коді. Однак при створенні шаблонів часто віддають перевагу ключовому слову typename через його зрозумілість, тому ми будемо використовувати саме його.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат