.NET глазами дельфийца. C# - Предварительное объявление типов

ОГЛАВЛЕНИЕ

 

Предварительное объявление типов

Предварительное объявление типов на самом деле непредусмотрено общей теорией объектно-ориентированного программирования иявляется частным решением Delphi, направленным на ослабление правила, которое было введено еще вклассическом Pascal,- .

Пример кода на Delphi:


type
TMyObject1 = class;
TMyObject2 = class;
TMyObject1 = class
function GetChild(Index: int): TMyObject2;
end;
TMyObject2 = class
property Owner: TMyObject1 read fOwner;
end;

В C# предописание типов не требуется, т.к. в пределах области видимостиклассов (обрамляющий класс, пространство имен) порядок объявлениянесущественен. Такое решение упрощает написание кода:


namespace MyObjects {
public class TMyObject1 {
public TMyObject2 GetChild(int Index) { ... }
}
public class TMyObject2 {
public TMyObject1 Owner {
get { return owner; }
}
}
}