掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Overrideをしない場合の同じ名前の関数 (ID:39913)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
無効というと語弊があるかと。 virtual、overrideされたメソッド(動的メソッドだったかな)は、変数の型じゃなく変数の実態に合わせたメソッドを呼んでくれるけど、そうじゃないメソッドは、変数の型に従ったメソッドを呼ぶという事かな。 TTestBase = class public procedure Method1; virtual; procedure Method2; virtual; end; TTest = class(TTestBase) public procedure Method1; procedure Method2; override; end; procedure TForm1.Button1Click(Sender: TObject); var Obj: TTestBase; Obj2: TTest; begin Obj := TTest.Create; Obj.Method1;//TTestBaseのMethod1が呼ばれる Obj.Method2;//TTestのMethod2が呼ばれる Obj2 := TTest.Create; Obj2.Method1;//TTestのMethod1が呼ばれる Obj2.Method2;//TTestのMethod2が呼ばれる end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.