TList型でレコード型を検索するには?

解決


ぱぱ  2007-02-07 20:34:23  No: 24815

下記のレコード型が定義されています。

type
  //エラー情報テーブル構造体
  PErrorInfo = ^TErrorInfo;
  TErrorInfo = record
    kv:     Integer;
    ScTick: Double;
    DtcNum: Integer;
    fs:     Char;   
  end;

var
  CntErrInfo: Integer;
  ErrInfo: array of TErrorInfo;

このレコード型の配列のポインタをTList型に格納したいのですが、
すべてのメンバが同じレコードは除きたいと考えています。
TListのIndexOfで下記のように判定していますが、
すべて格納されてしまいます。

    for i:=0 to CntErrInfo-1 do begin
      pErrInfo := @ErrInfo[i];
      idx := ErrInfoList.IndexOf(pErrInfo);
      if idx = -1 then
        ErrInfoList.Add(pErrInfo);
    end;

どの部分が原因か教えてください。
どうぞよろしくお願いします。


ぱぱ  2007-02-07 23:12:33  No: 24816

TStringList型を使うことで自己解決しました。
どうもありがとうございました。


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

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






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