H2440 インライン メソッドの可視性はアクセスされたメンバ '%s.%s' 以下です(Delphi)

提供: RAD Studio
移動先: 案内検索

エラーと警告のメッセージ(Delphi) への移動

インライン メソッドの本体内でアクセスされるメンバは、そのインライン メソッドのあらゆる呼び出し元からアクセスできる必要があります。したがって、そのメンバは少なくともインライン メソッドと同じ可視性である必要があります。

このエラーが発生するコードの例を次に示します。

type
   TFoo = class
   private
     PrivateMember: Integer;
   public
     function PublicFunc:Integer; inline;
   end;

function TFoo.PublicFunc:Integer;
	begin
		Result := Self.PrivateMember;
	end;

PublicFunc が呼び出される場所には必ず Result := Self.PrivateMember; が挿入されるため、そのようなすべての場所で PrivateMember にアクセスできる必要があります。

このエラーを修正するには、インライン指令を削除するか、インライン メソッドまたはそこでアクセスされているメンバの可視性を調整します。