aradeonas wrote 18 lines
Hi,
?
I have a record and it has some value and a value with type of that record it self like this example but compiler wont allow me to do this and give? "Type "TExampleRecord" is not
completely defined" error,and I dont want to use class and keep creating and destroying it,they will be some simple record.
?
//Works with class
?
TExample=class
??? s:string;
??? E:TExample;
? end;
?
//Doesn't work with record
?
? TExampleRecord=record
??? s:string;
??? ER:TExampleRecord;
? end;
You can never do this with records, it would recurse infinitely.
It works with a class, since a class is in fact just a pointer.
You must do
PExampleRecord=^TExampleRecord;
? TExampleRecord=record
??? s:string;
??? ER:PExampleRecord;
? end;
and allocate the record on the heap.
Michael.