クラスについて


ギュンタ  2005-07-06 21:30:53  No: 16234

データをまとめて使用するためにクラスを作りました。
クラス内にデータをレジストリの保存、読込する関数を作ってます。
以下のようなプログラムを作ったのですが、
Create部分で Access violation のエラーがでます。
何が間違っているのかわかりません。
教えてください。

type
  TLoadSave  = (lsLoad, lsSave);

  TMyData = class(TObject)
  private
    DataMode:  Byte;
    DataNum:   Integer;
  public
    function  LoadSave(LoadSaveMode: TLoadSave): Boolean;
  end;

  TForm1 = class(TForm)
    :
    :
  public
    MyData:  TMyData;
  end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MyData.Create;
  MyData.LoadSave(lsLoad);
end;


anone  2005-07-06 22:01:27  No: 16235

>   MyData.Create;
>  MyData.LoadSave(lsLoad);

  MyData := TMyData.Create;
  MyData.LoadSave(lsLoad);

というふうにコンストラクタはクラス参照を使って実行します。
インスタンスを作ったらどこかで Free をするのも忘れずに。

# なんか1週間まえにもまったく同じ回答を書いた記憶が・・・


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加