Мне нужно получить доступ к строгому закрытому классу var значению класса, используя его экземпляр и смещение переменной.
пока пробовал это, проверьте этот пример класса
type
TFoo=class
strict private class var Foo: Integer;
public
constructor Create;
end;
constructor TFoo.Create;
begin
inherited;
Foo:=666;
end;
//this function works only if I declare the foo var as
//strict private var Foo: Integer;
function GetFooValue(const AClass: TFoo): Integer;
begin
Result := PInteger(PByte(AClass) + 4)^
end;
Как видите, функция GetFooValue работает только тогда, когда переменная foo не объявлена как класс var.
Вопрос в том, как мне изменить GetFooValue
, чтобы получить значение Foo
, когда оно объявлено как strict private class var Foo: Integer;