Я абсолютно не мог получить объявления класса переадресации в Delphi 2010. Я прочитал документы, читайте в сети, и возможно я - идиот, но я просто не могу заставить ничего компилировать. Любая справка в широком масштабе ценилась бы!
Я поднял эти два mickey класса мыши. Уверенный я знаю, что им нужны конструкторы и т.д. для фактической работы, его просто демонстрация для проблемы, которую я имею.
У меня есть класс MyParent, который содержит TList моего другого класса MyChild. Это прекрасно. Но затем в MyChild я хочу смочь установить ссылку на ее родительский объект, не TList, но мой класс MyParent.
unit ForwardClassDeclarationTest;
interface
uses generics.collections;
type
MyChild = Class
private
ParentObect:MyParent; <--I need to be able to make this accessable
public
End;
type
MyParent = Class
public
tlChildren:TList<MyChild>;
End;
implementation
end.
Я должен создать предописание прежде оба, они классифицируют, но абсолютно не может получить что-либо движение. Заранее спасибо любому склонному выручить меня.
@csharpdefector Попробуйте этот код
uses
Generics.Collections;
type
MyParent = Class; // This is a forward class definition
MyChild = Class
private
ParentObect:MyParent;
public
End;
MyParent = Class // The MyParent class is now defined
public
tlChildren:TList<MyChild>;
end;
implementation
end.
Для получения дополнительной информации вы можете увидеть эту ссылку в Delphibasics
Прежде чем объявлять MyChild, поставьте: MyParent = Class;
, а затем объявить михильд. Затем объявите MyParent должным образом. И не повторно используйте тип ключевое слово . Он обозначает блок декларации типа, а не индивидуальный декларацию типа, а объявление пересылки класса работает только в одном блоке.