Подтвердить что ты не робот

Почему частичные методы должны быть недействительными?

В настоящее время я изучаю С# с помощью книги Beginning Visual С# 2010, и я в этой главе обсуждает различные аспекты и характеристики частичных методов и классов.

Чтобы процитировать книгу:

Рассмотрим в этой точке, почему частичные методы не могут иметь возвращаемый тип. Если вы можете ответить на это ваше удовлетворение, вы можете быть уверены, что полностью понимаете эту тему, так что это остается для вас упражнением ".

Вот где я застрял. Единственная причина, по которой я могу думать, это то, что когда значение возвращаемого метода присваивается чему-то в коде, оно генерирует ошибку, если для частичного метода не существует определения.

Кто-нибудь может прояснить эту тему для меня?

4b9b3361

Ответ 1

Поскольку вызовы на них не могут быть исключены из вызывающего кода в случае, если они не реализованы без его нарушения.

Пример:

partial void foo();
partial int bar();

Код вызова:

...
foo(); // successfully removed if foo isn't implemented
int x = bar() * 2; // what to do here?
Console.WriteLine(x);