Sorry, ich hab's etwas kurz erklärt.
Du musst einen Zeigertyp zurückgeben, also etwas so:
Delphi-Quellcode:
type
PhsStr2 = ^ThsStr2; // Zeiger auf ThsStr2
ThsStr2 = record
FStr: string;
function AsString: string;
function Init(const mString: string): PhsStr2; // <== Beachte den Rückgabetyp!
end;