掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TMemoの内容を高速に置き換えるには? (ID:8854)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 再度質問で申し訳ないのですが、TStringは抽象クラスですよね?TMemoのサブクラ > スだとしてもTMemoがインスタンス化される時にTStringもインスタンス化されるは > ずですよね?このあたりがまだよくわからないんです。 抽象クラスには、定義はあるが、実装していない機能があることはわかりますよね。 実装していないものをインスタンス化はできません。 たとえば、次のようなコードは正しく動きます。 # 一部抜粋です var sl: TStrings; begin sl := TStringList.Create; sl.Add('TEST'); ShowMessage(sl.Text); sl.Free; end; slは、TStringsクラスの変数ですが、中身はTStringListです。 これは、TStringListがTStringsの派生クラスだから代入できるのです。 同じように、TMemo(TCustomMemo)では、 FLines := TMemoStrings.Create; としています。 Linesプロパティの実態は、TMemoStringsクラスのインスタンスです。TStringsの未実装機能を、TMemoStringsが実装しています。こちらが呼ばれるわけです。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.