掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Generics.Collections.TDictionary の ContainsValue (ID:40013)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
標記の件、エンバカデロのサンプルを触ってみているんですが、ContainsValueの動作がよくわかりません。 教えていただけないでしょうか? D2010,WinXpSp3です。 uses ・・・Generics.Collections type TCity = record Country : string; Latitude : Integer; Longitude : Integer; end; procedure TForm1.Button1Click(Sender: TObject); var Dictionary : TDictionary<String, TCity>; City,City2 : TCity; exist : boolean; begin Dictionary := TDictionary<String, TCity>.Create; Dictionary.Clear; Button1.Caption := Dictionary.ToString; City.Country := 'イギリス'; City.Latitude := 515; City.Longitude := -17; Dictionary.Add('ロンドン', City); exist := Dictionary.ContainsValue(City); ShowMessage(BoolToStr(exist, true)); // False・・・なぜ?? City2 :=Dictionary.Items['ロンドン']; exist := Dictionary.ContainsValue(City2); ShowMessage(BoolToStr(exist, true)); // True if ( City.Country = City2.Country ) and ( City.Latitude = City2.Latitude ) and ( City.Longitude = City2.Longitude ) then ShowMessage('同じ') else ShowMessage('違う'); //同じ Dictionary.Destroy; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.