170 похожих чатов

Как можно сделать так, чтобы не запрашивать тип шаблонный?

11 ответов

35 просмотров

Добавить тип по-умолчанию?

Zigzag-Hax Автор вопроса
Zigzag Hax
Не совсем понял мысль

У Вас шаблонный класс, которому Вы хотите не предоставлять тип аргументом. Для этого классу требуется предоставить аргумент-тип по-умолчанию. В частности, пример окажется корректным при объявлении условного вида template < typename = void > class Liza::Converter;

Zigzag-Hax Автор вопроса
Sergey Anisimov
У Вас шаблонный класс, которому Вы хотите не предо...

Возможно ли сделать, это как специализация по-умолчанию?

Zigzag Hax
Возможно ли сделать, это как специализация по-умол...

Это в определенном смысле и будет специализацией по-умолчанию, если я Вас правильно понимаю. Если у Вас там пак (typename...) - так делать нельзя. На предоставление явных специализаций это не повлияет.

Zigzag-Hax Автор вопроса
Sergey Anisimov
Это в определенном смысле и будет специализацией п...

У меня есть 2 енама( будет больше ). Есть класс Конвертер, который будет принимать енам и выкидывать его код. Дальше по пайплайну у меня на основе этого кода вызывать нужную операцию в цепи. На этапе конвертера я не хочу в коде явно писать тип, который принимает этот конвертер-шаблонный, так как очевидно, что там может быть множество енамов

Zigzag Hax
У меня есть 2 енама( будет больше ). Есть класс К...

Чуть конвенционнее, пожалуйста: под "кодом энама" что подразумевается? В примере выше key - переменная какого-то scoped-enum'а, которых может быть произвольное количество с одинаковым underlying-type? Вы хотите, таким образом, выбирать специализацию шаблонного класса на основании определения этой самой специализации. Застряли в желании универсализации ООП-парадигмы, я так понимаю? =) Сделайте функцию свободной или упраздните шаблонность класса (все нужное осуществляйте внутри ее тела).

Zigzag-Hax Автор вопроса
Sergey Anisimov
Чуть конвенционнее, пожалуйста: под "кодом энама" ...

Код - это константа внутри енама ( не правильно высказался 😀 ) Интересует именно момент, когда у меня множество scoped enum и я хочу на основе любого из них выстраивать запрос. Также не хочется писать по множеству разных интерфейсов для каждого из скопедов

Zigzag Hax
Код - это константа внутри енама ( не правильно вы...

А что Вам мешает иметь интерфейс вида template < OneOf</* scoped-enums */> E > auto func ( E e ); ? Приведение возможно и к разным: static_cast<std::underlying_type_t<E>>(e).

Zigzag-Hax Автор вопроса
Sergey Anisimov
А что Вам мешает иметь интерфейс вида template < O...

Только у меня и так такой интерфейс =) Банально он не хочет во время компайлтайма выполнять функцию, так как не знает походу тип =)

Zigzag Hax
Только у меня и так такой интерфейс =) Банально о...

Так а классу-то шаблонность зачем (и зачем он там вообще)?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта