Я пытаюсь написать шаблонный класс, который наследуется от T
, и чтобы правильно реализовать одну часть, мне нужно знать, с каким типом данных работает этот T
. К счастью, все допустимые замены для T имеют метод-член GetOutput
, который возвращает ожидаемый тип данных. Однако метод имеет две перегрузки: GetOutput()
и GetOutput(int)
. Я пытался извлечь тип, используя этот ответ , но мне не удается получить разрешение перегрузки:
using OutputType = typename std::result_of<decltype(&T::GetOutput)(T)>::type;
Возможно ли это, и если Итак, как правильно туда добраться?