Вопросы по теме 'class-template'

C ++ - Специализация шаблонов и частичная специализация
Я искал в Интернете и stackoverflow конкретный ответ, но, похоже, не нашел его. Мне нужно создать общий класс, а затем реализовать определенные функции. Мои конкретные инструкции были такими: Вам необходимо использовать параметры выражения шаблона и...
1385 просмотров
schedule 25.04.2022

Избегайте угловых скобок в шаблоне по умолчанию
Если у меня есть класс шаблона с типом шаблона по умолчанию, я должен написать угловые скобки шаблона. Можно ли как-то этого избежать? Пример: template <typename T=int> class tt { public: T get() { return 5; } }; ... tt<> t;...
2325 просмотров

различное поведение активатора в разных контекстах в шаблонах классов
Почему поведение такое разное? Версия #if 1 успешно (что странно) компилируется и выдает ожидаемый результат в stdout , но версия с #if 0 этого не делает: #include <iostream> #include <type_traits> #include <cstdlib>...
116 просмотров
schedule 26.04.2024

Шаблон класса, который не зависит от перестановок его аргументов
Рассмотрим шаблон класса и вспомогательные классы перечисления, определенные следующим образом: enum class Color {Red, Green, Blue} enum class ShowAxes {False, True} enum class ShowLabels {False, True} template< Color, ShowAxes, ShowLabels...
269 просмотров
schedule 02.08.2022

Спецификация пакета параметров С++ в конструкторе, а не в шаблоне
В отличие от объявлений функций с пакетами параметров, я обнаружил, что классам требуется тип для каждого аргумента в угловых скобках... Component<IntegerPair, int, int> temp(40, 5); ... что кажется излишним. Вот как я определил...
390 просмотров

Постоянство вывода шаблона класса С++ 17
Я пытаюсь использовать новый вывод шаблона класса С++ 17, и все это работает нормально, пока я не применяю const. Это небольшой пример проблемы, с которой я сталкиваюсь: #include <type_traits> template <typename T> struct X { T...
144 просмотров
schedule 19.05.2024

Выведение аргументов шаблона частичного класса в C ++ 17
В приведенном ниже примере мы используем функцию C ++ 17 «Вывод аргументов шаблона класса», чтобы сделать вывод, что val имеет тип Base<int, double, bool> : template<class T, class U, class V> struct Base { Base(T, U) { };...
1130 просмотров