«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > «Класс» или «Типзед» для параметров шаблона: когда использовать что?

«Класс» или «Типзед» для параметров шаблона: когда использовать что?

Опубликовано в 2025-03-24
Просматривать:582

'class' or 'typename' for Template Parameters: When to Use Which?

определение выбора между «классом» и «типовым именем» для параметров шаблона

в определениях шаблона C, вопрос возникает вопрос о том, используется ли «класс» или «тип» для параметрам шаблона. Эта статья направлена ​​на то, чтобы дать исчерпывающее понимание последствий и основных причин, лежащих в основе этих вариантов.

Первоначально ключевое слово «класс» был представлен Stroustrup для указания типов в шаблонах с намерением избежать введения нового ключевого слова. Тем не менее, некоторые члены комитета выразили обеспокоенность по поводу потенциальной путаницы из -за перегрузки «класса», поскольку он уже обозначал объявление типа.

, чтобы рассмотреть это, комитет ввел «типовое имя» как новое ключевое слово, специально предназначенное для определения типов шаблонов. Этот шаг был направлен на снижение синтаксической неоднозначности и направляет разработчиков к более точному и интуитивному подходу. Тем не менее, «класс» сохранил свою предыдущую функциональность, чтобы обеспечить обратную совместимость.

В результате как «класс», так и «typename» остаются достоверными параметрами для определения параметров шаблона в C, служащих в качестве взаимозаменяемых ключевых слов. Некоторые разработчики могут предпочесть «имя типна», чтобы избежать путаницы, в то время как другие могут поддерживать традиции и придерживаться «класса». В конечном счете, выбор между «классом» и «typename» является вопросом личного предпочтения, без существенных технических последствий.

стоит отметить, что до C 17 класс был требованием для параметров шаблона шаблона. Однако с введением C 17 «Typename» стало предпочтительным вариантом также в этом контексте, согласованным с более когерентным синтаксисом для типов шаблонов.

]
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3