например, если вы хотите, чтобы он был более строгим.

ал способ реорганизовать и упростить одну функцию, где я должен выполнять сортировку данных в зависимости от типа входного класса, и застрял вswitch(input.GetType()):

Быстрый поиск привел меня кПочему оператор C # switch не позволяет использовать typeof / GetType ()? со ссылкой наhttp://blogs.msdn.com/peterhal/archive/2005/07/05/435760.aspx

Я читаю документацию, но не вижу оправдания, что ситуация запутанная.

Из статьи:

К сожалению, как и многие «простые» языковые функции, переключение типов не так просто, как кажется на первый взгляд. Проблемы начинаются, когда вы смотрите на более важный и не менее важный пример, подобный этому:

class C {}
interface I {}
class D : C, I {}

switch typeof(e) {
case C: ... break;
case I: ... break;
default: ... break;
}

Что не так просто? Звонокtypeof(e) не может вернуться - этоI D а такжеC, Он должен вернутьType не массив типов интерфейса и класса -Type[], Так что типclass D являетсяD, А такжеD соответствуетdefault: ветка.

Я что-то упустил?

Ответы на вопрос(0)

Ваш ответ на вопрос