H2440 Inline-Methodensichtbarkeit muss niedriger oder gleich der Sichtbarkeit des Zugriffselements '%s.%s' sein (Delphi)
Nach oben zu Fehler- und Warnungsmeldungen (Delphi)
Ein Element, auf das im Rumpf einer Inline-Funktion zugegriffen wird, muss von jeder Position aus erreichbar sein, von der die Inline-Methode aufgerufen wird. Daher muss das Element mindestens dieselbe Sichtbarkeit haben wie die Inline-Methode.
Hier ein Beispiel für Quelltext, der zu diesem Fehler führt:
type
TFoo = class
private
PrivateMember: Integer;
public
function PublicFunc:Integer; inline;
end;
function TFoo.PublicFunc:Integer;
begin
Result := Self.PrivateMember;
end;
Weil Result := Self.PrivateMember; überalll dort eingefügt wird, wo PublicFunc aufgerufen wird, muss PrivateMember von jeder dieser Positionen aus erreichbar sein.
Um diesen Fehler zu beheben, entfernen Sie die Direktive inline oder passen die Sichtbarkeit der Inline-Methode oder des Elements, auf das sie zugreift, an.