Можно ли перегрузить операторы «как» или «как» - PullRequest
4 голосов
/ 20 января 2011

Это разрешено? Если нет, то может ли это быть достигнуто по своей сути путем перегрузки операторов неявного / явного преобразования?

Ответы [ 3 ]

15 голосов
/ 20 января 2011

Допускается ли перегрузка операторов "is" и "as"?

номер

Если нет, то может ли это быть реализовано по своей сути путем перегрузки операторов неявного / явного преобразования?

Нет. Операторы «как» и «есть» говорят вам, что на самом деле означает . Они не обращают внимания на определяемые пользователем преобразования.

См.

http://blogs.msdn.com/b/ericlippert/archive/2009/10/08/what-s-the-difference-between-as-and-cast-operators.aspx

http://blogs.msdn.com/b/ericlippert/archive/2010/09/16/is-is-as-or-is-as-is.aspx

чтобы узнать больше об операторах «как» и «есть».

5 голосов
/ 20 января 2011
0 голосов
/ 20 января 2011

Нет, поскольку они не являются операторами как таковыми, они являются ключевыми словами языка.

Кроме того, я не уверен, к чему вы бы их перегрузили и все же сохранили семантику языковой спецификации?Похоже, это может быть использовано только для великого зла:)

...