Запитання з тегом «template-argument-deduction»

1
Що таке посібники з вирахування шаблонів і коли ми повинні ними користуватися?
Стандарт C ++ 17 вводить "посібники з вирахування шаблонів". Я вважаю, що вони мають щось спільне з новим вирахуванням аргументу шаблону для конструкторів, представленим у цій версії стандарту, але я ще не бачив простого пояснення щодо того, для чого вони потрібні, у стилі поширених запитань. Що таке посібники з вирахування …

3
Як я можу запобігти відгадуванню C ++ другого аргументу шаблону?
Я використовую бібліотеку C ++ ( strf ), яка десь у ній має такий код: namespace strf { template <typename ForwardIt> inline auto range(ForwardIt begin, ForwardIt end) { /* ... */ } template <typename Range, typename CharT> inline auto range(const Range& range, const CharT* sep) { /* ... */ } …

1
Тип автоматичного повернення шаблону та неоднозначності
У мене функція шаблону перевантажена: template<typename T1, typename T2> auto overMax(T1 a, T2 b) { std::cout << __FUNCSIG__ << std::endl; return b < a ? a : b; } template<typename RT, typename T1, typename T2> RT overMax(T1 a, T2 b) { std::cout << __FUNCSIG__ << std::endl; return b < a …

2
Вирахування аргументу шаблону для аргументу типу функції
Розглянемо наступну програму. #include <iostream> template <typename T> void f( void ( *fn )( T ) ) { fn( 42 ); } void g( int x ) { std::cout << "g( " << x << " );\n"; } int main() { f( g ); } Програма успішно збирається, і її …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.