Свързани въпроси 'template-specialization'
Разнообразна шаблонна функция с аргументи от един и същи тип
Как да огранича шаблонна функция с различни варианти, така че всички нейни аргументи да бъдат от един и същи тип?
Имам нужда от това за специализация на
CommonType!T either(T...)(T a) if (a.length >= 1)
{
static if (T.length == 1)...
125 изгледи
schedule
17.09.2022
C++ шаблонна специализация за плаващи точки
Искам да специализирам метод от клас X за типове с плаваща запетая. Следният код се компилира и работи перфектно:
x.hpp:
template <typename T>
class X {
public:
...
T bucket_width(const BucketID index) const;
T bucket_min(const...
702 изгледи
schedule
27.09.2022
Как да специализирам член на шаблонен клас с параметър на шаблон на шаблон
Имам клас на шаблон с int и параметър на шаблон на шаблон. Сега искам да специализирам членска функция:
template <int I> class Default{};
template <int N = 0, template<int> class T = Default> struct Class
{
void member();...
2390 изгледи
schedule
10.12.2022
Специализация на C++ шаблон за конкретни стойности
Имам структура Opers с някои аритметични операции: mult() , div() , mod() .
И трябва да специализирам шаблон за определени стойности на n . Ето пример за Opers<1> .
Но също така искам да направя специализация за n , които са...
1540 изгледи
schedule
17.11.2022
Специализиране на std::hash към производни класове
Имам абстрактен базов клас Hashable , от който произлизат класове, които могат да бъдат хеширани. Сега бих искал да разширя std::hash до всички класове, които произлизат от Hashable .
Следният код трябва да прави точно това.
#include...
2049 изгледи
schedule
26.10.2022
Извикване на неспециализираната версия на функция, когато я специализирате в C++?
Да кажем, че имам шаблонен клас:
template <typename T>
class foo {
void do_someting(T obj) {
// do something generic...
}
};
и искам да специализирам do_something, но в него искам да извикам "нормалната" функция do_something:...
1002 изгледи
schedule
26.12.2023
C++ Добавяне на претоварени методи за специфични специализации на шаблони
Имам доста интересен проблем: имам два шаблонни класа. Единият може да приема произволен параметър на шаблона, другият е по-специализиран (за този проблем с играчката ще кажем, че трябва да приема плаващи точки).
template< class T >
class...
106 изгледи
schedule
06.02.2024
Как да специализирам тази членска функция на шаблон?
Имам тази настройка:
class DontUse;
template<class T,class U = DontUse, class V = SomeStandardType>
class Foo
{
public:
void bar(U &uh);
};
Когато U е настроено на DontUse, искам лентата да е празна функция. Във всички...
204 изгледи
schedule
14.04.2024
В C# как да получите различен екземпляр на IEqualityComparer‹T›, ако общият тип имплементира интерфейс
Имам общ метод с неограничен общ тип. Трябва да получа различен IEqualityComparer, ако тип T внедрява интерфейс.
Един код изглежда приблизително така:
public SomeState MergeCollection<T>(
ICollection<T> thisValue,...
266 изгледи
schedule
18.01.2024