掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
クラスの作り方教えてください (ID:45798)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
あけまして、おめでとうございます。 今年もよろしくお願いします。 (⌒▽⌒)/゜・:*【ネ兄】*:・゜\(⌒▽⌒) -------------------- クラスを使ってプログラムを作っているのですが、うまくいきません。 クラスのインスタンスの値(?)が0になってるみたいです。 テスト用に次のようにしたんですが、ShowMessageで0が表示されます。 (コンストラクタのところでは正常に表示されます) private { Private 宣言 } public { Public 宣言 } end; TCheckText = class(TObject) Fnum: Integer; Findic:Array of String; constructor Create(indictxt: TStringList); // コンストラクタ function Checkind(text:String):String; end; var Form1: TForm1; implementation {$R *.dfm} Constructor TCheckText.Create(indictxt: TStringList);//配列に置き換え var Findic:array of String; i,len_array,Fnum:Integer; begin len_array := indictxt.Count; SetLength(Findic,len_array); Fnum := len_array div 5; for i := 0 to len_array - 1 do begin Findic[i] := indictxt.Strings[i]; end; ShowMessage(IntToStr(Fnum));//ここでは正常に表示される end; //---------------------------------- ボタンで以下のプログラムを実行 procedure TForm1.test(); var ind0:TStringList; indic0:TCheckText; filename_ind0:string; i:Integer; begin ind0 := TStringList.Create; filename_ind0 := '\いろいろ.txt';//数百行 ind0.LoadFromFile(filename_ind0); indic0:=TCheckText.Create(ind0); ShowMessage(IntToStr(indic0.Fnum));// 0と表示される end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.