5
ответов

Шаблонный вычет за функцию на основе его типа возврата?

Я хотел бы смочь использовать шаблонный вычет для достижения следующего: GCPtr <A> ptr1 = GC:: Выделите (); GCPtr <B> ptr2 = GC:: Выделите (); вместо (что я в настоящее время имею): GCPtr <A>...
вопрос задан: 21 October 2018 23:57
4
ответа

Частичное упорядочивание с шаблоном функции, не выводившим контекст

При чтении другого вопроса я пришел к проблеме с частичным упорядочиванием, которое я сократил к следующему шаблону тестового сценария <имя типа T> Константа структуры {определение типа пустой тип;}; шаблон <...
вопрос задан: 21 October 2018 23:55
1
ответ

Вывод конфликтующих типов в пакете шаблонов со ссылкой

Я работаю над программой со следующей структурой: #include < iostream > #include < string > void fun (const std :: string & amp; text, int a, int b) {// (1) std :: cout < < текст < < ...
вопрос задан: 29 March 2019 11:34
1
ответ

Использование auto в параметрах шаблона: некоторые примеры использования и & hellip; как заставить работать с массивами постоянного размера C?

У меня есть следующее примерное использование auto в параметрах шаблона (которое мне нравится независимо от их здравомыслия или наличия лучших альтернатив, я просто пытаюсь усвоить 'auto in template ...
вопрос задан: 18 January 2019 23:53
1
ответ

Почему это неоднозначный вызов функции с использованием GCC? Шаблонный вывод не удался?

Я не могу скомпилировать мой текущий, на мой взгляд, действительный код C ++ (17) ни с помощью GCC, ни clang. Недавно мне удалось вызвать ошибку при компиляции моего (на мой взгляд) корректного кода C ++ 17 с помощью clang (сообщение об ошибке: ...
вопрос задан: 18 January 2019 12:35
0
ответов

Аргумент шаблона по умолчанию теряет свой ссылочный тип

Рассмотрим #include #include template <класс T, класс ARG_T = T &> T foo (ARG_T v) {return std :: is_reference :: value; } int main () {...
вопрос задан: 6 September 2019 15:36
0
ответов

Вывести параметр шаблона внешнего класса в вызов функции вложенного класса?

Есть ли способ вывести внешний шаблон во вложенном классе? шаблон < класс T > struct A {struct B {}; }; шаблон < класс T > void f (имя типа A < T > :: B b) {} // трудно определить T? ...
вопрос задан: 16 January 2019 19:06
0
ответов

Вывод аргументов шаблона со строго типизированными перечислениями

Если у меня обычное (слабое) перечисление, я могу использовать его перечисляемые значения как параметры шаблона, не относящиеся к типу, например: enum {Cat, Dog, Horse}; template bool magic (T & t) { ...
вопрос задан: 21 October 2018 23:55
0
ответов

Почему экземпляры шаблонов не могут быть выведены в `std::reference_wrapper`?

Предположим, у меня есть некоторый объект типа T, и я хочу поместить его в обертку ссылок: int a = 5, b = 7; std::reference_wrapper p(a), q(b); // или "auto p = std::ref(a)" Теперь я могу легко ...
вопрос задан: 21 October 2018 23:54
0
ответов

Вывести аргумент шаблона из сигнатуры вызова std::function

Рассмотрим эту функцию шаблона: template ReturnT foo(const std::function& fun) { вернуть удовольствие(); } Почему компилятор не может вывести ...
вопрос задан: 21 October 2018 23:53
0
ответов

Разница между int a[5] и int (&a)[5] в выводе параметров шаблона

Этот вопрос касается функций, которые принимают массивы статически известного размера. Возьмем, к примеру, следующую минимальную программу:#include template void arrfun _a (int a[N] )...
вопрос задан: 21 October 2018 23:15
0
ответов

Параметры шаблона по умолчанию :Почему компилятор жалуется на отсутствие указания аргумента шаблона?

У меня есть этот код :struct A{}; шаблон <класс T = A> структура B { пустота foo (){} }; Б б; //Ошибка :отсутствуют аргументы шаблона перед 'b' //Ошибка :ожидается ';' перед 'б' //Подробнее...
вопрос задан: 21 October 2018 23:14
0
ответов

Deducing knowledge of original types, while simultaneously forwarding

Summary: I want to end up with a function that deducing the exact types it was called with and takes (e.g.) a tuple that forwards them (the types of which will be different from the exact types the ...
вопрос задан: 21 October 2018 23:14
0
ответов

Вывести параметр шаблона не типа

Возможно ли вывести параметр шаблона не типа из параметра функции шаблона? Рассмотрим этот простой шаблон: template constexpr int factorial() { return N * ...
вопрос задан: 21 October 2018 23:14
0
ответов

Обходной путь для вывода аргументов шаблона в невыведенном контексте

Рассмотрим следующий код: #include template struct external {struct inner {}; } ; template std :: ostream & operator << (std :: ostream & ...
вопрос задан: 5 July 2018 13:49