Вопросы по теме 'specialization'

Законно ли делать виртуальную специализацию шаблона функции?
В C ++ предполагается, что специализация шаблона функции действует точно так же, как обычная функция. Значит ли это, что я могу сделать одну виртуальную? Например: struct A { template <class T> void f(); template <> virtual...
6080 просмотров
schedule 30.06.2022

Ошибка специализации шаблона — C++ (упражнение C++ Primer Plus)
В настоящее время я изучаю C++, поэтому у меня мало знаний по этой теме. Я использую учебник по С++ плюс, и вот проблема: Напишите шаблонную функцию maxn(), которая принимает в качестве аргументов массив элементов типа T и целое число,...
1590 просмотров
schedule 14.05.2022

Специализация шаблона одного метода из шаблонного класса
Всегда учитывая, что следующий заголовок, содержащий мой шаблонный класс, включен как минимум в два .CPP файла, этот код компилируется правильно: template <class T> class TClass { public: void doSomething(std::vector<T> * v); };...
61854 просмотров

Специализация шаблона после создания экземпляра?
Мой полный код слишком длинный, но вот фрагмент, который отражает суть моей проблемы: class BPCFGParser { public: ... ... class Edge { ... ... }; class ActiveEquivClass { ... ... }; class PassiveEquivClass {...
15898 просмотров

Есть ли способ использовать специализацию шаблона для отделения new от new[]?
У меня есть класс автоматического указателя, и в конструкторе я передаю указатель. Я хочу иметь возможность отделять new от new[] в конструкторе, чтобы я мог правильно вызывать delete или delete[] в деструкторе. Можно ли это сделать с помощью...
957 просмотров
schedule 28.11.2022

Почему эти аргументы типа не соответствуют уточнению типа?
Почему этот код Scala не проходит проверку типов? trait T { type A } trait GenFoo[A0, S <: T { type A = A0 }] trait Foo[S <: T] extends GenFoo[S#A, S] Я не понимаю, почему «аргументы типа [S#A,S] не соответствуют границам параметра типа...
578 просмотров

Специализации и структуры классов шаблонов C++
Я часами искал в Интернете решение, но безрезультатно. Я программирую C++ в Xcode #import "data.h" // contains a struct called data template <class T> class container { public: container(); ~container(); private:...
677 просмотров
schedule 07.11.2022

частичная специализация функции в классе шаблона
У меня есть класс шаблона, представляющий массив числовых значений. Я хочу, чтобы этот класс работал с любым типом числового значения (например, int, double и т. Д.) И тремя типами контейнеров (std :: vector, std :: deque и std :: list). Вот...
887 просмотров

Специализация шаблона или условные выражения?
Я глубоко погрузился в новый проект, к которому обращаюсь с кучей шаблонов и их специализаций. Теперь, после дня без программирования, я задаюсь вопросом, действительно ли это стоит дополнительных строк кода. Вопрос: в чем преимущества...
830 просмотров

специализация шаблона с массивами, std :: is_array
Я играю со специализацией шаблонов и SFINAE. Что касается следующего примера, все кажется простым: template <class T> void Do(T t, typename std::enable_if<std::is_integral<T>::value >::type* = 0) { cout...
2207 просмотров
schedule 12.01.2022

Специализация шаблона или перегрузка функций
Я знаю, что есть и другие подобные вопросы, но они не очень ясны. Теперь я чувствую, что это глупый вопрос, потому что я уверен, что у меня уже есть ответ, но все же позвольте мне спросить. Итак, у меня в основном есть функция, которая принимает...
154 просмотров

Специализация внутреннего шаблона с параметрами по умолчанию
У меня проблемы со специализацией внутреннего шаблона, когда все его параметры известны. Вот пример: template < typename T0 > struct outer { template < typename T1 = void, typename T2 = void > struct inner {...
371 просмотров
schedule 17.02.2023

Частичная специализация функции класса с шаблонным аргументом
Я хотел бы иметь класс шаблона очереди, который может указывать внутреннюю структуру контейнера с помощью аргумента шаблона и специализировать функцию Top (поскольку разные контейнеры используют другое имя функции для доступа к переднему элементу),...
80 просмотров
schedule 29.11.2023

Действительна ли эта явная специализация функции шаблона шаблона элемента шаблона элемента шаблона класса?
Кто-нибудь знает, действительна ли эта явная специализация: template <class> struct L { template <typename T> struct O { template <typename U> static void Fun(U); }; }; template<> template<typename T>...
444 просмотров

Специализация шаблона С++: ошибка компиляции: не является типом
Если я удалю часть специализации шаблона (тот, который пытается напечатать «Тест 2»), код компилируется нормально, но я хотел бы иметь особый случай, который запускает другой путь кода, который выглядит чистым для внешних пользователей. ....
3034 просмотров

Специализация шаблона на элементе шаблона класса шаблона
Вероятно, это только синтаксическая проблема. Итак, у меня есть этот шаблонный класс: template <typename String, template<class> class Allocator> class basic_data_object { template<typename T> using array_container =...
1624 просмотров
schedule 24.05.2022

Специализации шаблонов с идентичными функциями, за исключением параметра шаблона
Как позаботиться о повторениях ниже для определений Object::func() без использования макросов? template <int N> struct Object {}; template <> struct Object<0> { // special stuff void func(); }; template <> struct...
129 просмотров
schedule 06.07.2023

Использование частичного класса шаблона в качестве специализированной функции шаблона
У меня есть шаблон, и я хочу специализировать его с помощью вектора (который сам является шаблоном). Это возможно? Вот ошибка компилятора: ошибка C2768: 'serialize': незаконное использование явных аргументов шаблона. Небольшой пример того, что...
160 просмотров

Специализация шаблона только для определенных методов
Я не могу специализировать некоторые методы в своем классе шаблонов vec2. Вот мой код: #pragma once template<typename Number> struct vec2 { static_assert(std::is_same<Number, int>::value || std::is_same<Number,...
302 просмотров
schedule 28.04.2022

Ошибка специализации функции шаблона С++
Я новичок в использовании шаблонов С++. Мне нужно написать специализацию функции шаблона для моего проекта. Это простая функция Sum для входных данных разных типов, которая вычисляет сумму между двумя итераторами. Исходная функция является...
136 просмотров
schedule 28.07.2022