Код: Выделить всё
template
struct TypePair;
template
struct TypePair
{
using TypeA = unsigned;
using TypeB = signed;
static TypeB Convert(TypeA value)
{
return static_cast(value);
}
};
template
struct TypePair
{
using TypeA = float;
using TypeB = double;
static TypeB Convert(TypeA value)
{
return static_cast(value);
}
};
// and so on ...
template
typename TypePair::TypeB Convert(typename TypePair::TypeA value)
{
return TypePair::Convert(value);
}
int main()
{
auto value = Convert(5); // here I only need to specify the "input" type
return 0;
}
Итак, могу ли я реализовать приведенный выше пример на C#? Я хочу вывести подтип как возвращаемый тип из универсального.
Подробнее здесь: https://stackoverflow.com/questions/791 ... eturn-type