выводить именно второй аргумент шаблона?
https://godbolt.org/z/3b8oMrY1Y
Если сделать в объявлении B typename Src = void или typename Dst = void, typename Src = void, то всё ломается — Src перестаёт выводиться.
мне кажется, что как только вы начинаете руками явно указывать шаблонные параметры, то ctad на этом собственно заканчивается
так вы поменяйте их местами и должно начать, не?
смысла нет. Мне нужно зафорсить тип, к которому будет кастоваться в некоторых случаях
Deduction guide должен выводить полностью тип. К B<int>(1) вывод типов не применяется, потому что вы уже явно их указываете
А мб вам верхнюю структуру делать зависимой только от Src, а каст разрешить во всё?
тогда как мне в случаях неоднозначности зафорсить конкретный тип?
Так опять же, почему просто их не поменять местами?
Обсуждают сегодня