Вопрос относительно неявных преобразований в спецификации языка C #

Раздел 6.1 Неявные преобразования определяет преобразование идентичности следующим образом:

Преобразование идентичности преобразует любой тип в тот же тип . Это преобразование существует таким образом, что объект, у которого уже есть требуемый тип, можно сказать, что он может быть преобразован в этот тип.

Теперь, какова цель таких предложений?

(В §6.1.6 Неявные преобразования ссылок )

Неявные преобразования ссылок:

  • [...]
  • Из любого ссылочного типа на ссылочного типа T , если он имеет неявную идентичность или преобразование ссылки в ] ссылочный тип T 0 и T 0 имеет преобразование идентичности в T .

и:

(In §6.1.7 Преобразования упаковки)

  • Тип значения имеет преобразование упаковки в тип интерфейса I , если у него есть преобразование упаковки в тип интерфейса I 0 и I 0 имеет преобразование идентичности в I .

Изначально они кажутся избыточными (тавтологичными). Но они должны быть там с определенной целью, так зачем они там?

Вы можете привести пример двух типов T 1 , T 2 таким образом, что T 1 не неявно конвертируется в T 2 , если бы это было не так. Не для приведенных выше абзацев?

11
задан John Saunders 19 September 2010 в 02:34
поделиться