Результаты поиска по запросу "template-specialization"
Специализация шаблона функции на указателях функций
У меня есть функция очистки, которую я хочу запускать только на (традиционных) типах указателей. Моя проблема с шаблонами функций, которые я могу получить, ограничивая функцию только указателями, однако из-за различий правил приведения между ...
нетипичное выражение аргумента "0_o. Аргументы выражения могут быть частично специализированы? как ?, большое спасибо :)
struct Bar { enum { Special = 4 }; }; template<class T, int K> struct Foo {}; template<class T> struct Foo<T,T::Special> {};ьзование: Foo<Bar> aa;не может скомпилировать с помощью gcc 4.1.2 Он жалуется на использованиеT::Special для частичной ...
https://wandbox.org/permlink/PpR6G0gcvMRoxhhZ
отаю над проектом, который имеет функцию шаблона следующим образом: template <class T> T foo<T>(T val) { return someFunc(val); } template <> bool foo<bool>(bool val) { return otherFunc(val); };Теперь у меня есть классBar, который я не хочу ...
Не мое отрицательное мнение, кстати.
тся ли правильными несколько специализаций шаблонов классов, если каждая из них отличается только между шаблонами, включающими параметры шаблона, в не выводимых контекстах? Типичный примерstd::void_t использует его для определения черты, ...
как typedef
я есть вопрос относительно частичной специализации шаблонных функций-членов. Фон:Цель состоит в том, чтобы вычислить описательную статистику больших наборов данных, которые слишком велики для одновременного хранения в памяти. Поэтому у меня есть ...
ODR
ю в виду этот ответ: https://stackoverflow.com/a/4447057/930315 [https://stackoverflow.com/a/4447057/930315] Я столкнулся с тем же вопросом, что и ОП процитированного вопроса, имея функцию template<typename T> void func(T& val);и его ...
Вы можете создать базовый класс, в котором вы можете определить всех своих членов, кроме bar (), а затем создать производные классы (один для общего назначения, другой для SomeType):
тоящее время я занимаюсь рефакторингом некоторого кода, который явно специализирует функцию-член шаблона класса с двумя параметрами шаблона. template <class S, class T> class Foo { void bar(); }; template <class S, class T> void Foo<S, T>::bar() ...
конечно).
ОШИБКА: template<class T> struct A { void f1() {}; void f2() {}; }; template<> struct A<int> { void f2() {}; }; int main() { A<int> data; data.f1(); data.f2(); }; По сути, я хочу специализировать только одну функцию и использовать ...
Живой пример
веденном ниже фрагменте кода, template<typename T1> void func(T1& t) { cout << "all" << endl; } template<typename T2> void func(T2 &t) { cout << "float" << endl; } // I do not want this // template<> void func(float &t) int main() { int i; float ...
синтаксис.
ю, что спецификация языка запрещаетчастичный специализация шаблона функции. Я хотел бы знать обоснование, почему оно запрещает это? Они не полезны? template<typename T, typename U> void f() {} //allowed! template<> void f<int, char>() {} ...