если заданы два типа (тип a, тип b), есть ли «хороший» способ найти , если эти два можно сравнить, суммировать и т. Д.?Как проверить, можно ли сравнивать два типа, суммировать и т. Д.?
Я думал, если типы реализуют IConvertible
, можно было бы преобразовать , чтобы сказать «десятичный знак» и выполнить «Convert.ToDecimal(a) > Convert.ToDecimal(b)
»?
Я строю оценщик выражений и хочу иметь возможность работать с любым видом объекта и, следовательно, нужно знать, можно ли сравнить тип с другим типом (он НЕ должен быть одного и того же типа с обеих сторон например, double > int
)
Вот мой вопрос по этой же проблеме. http://stackoverflow.com/questions/2093230/how-to-check-that-i-can-sum-values-of-given-type –