Author: h.mohri
連想配列は[キーか]ら連想される内容(Value)をプログラムで登録しておき、必要なときに[キー]から検索した内容(Value)を取得できるデータコンテナです。ECMAScript(JavaScript)では変数にJSONを入力すると連想配列として扱うことができます。
JavaScript言語
PHP言語
このように、連想配列はさまざまなプログラム言語で利用されています。C++での連想配列は標準ライブラリのmapが使用できます。一般的に連想コンテナといわれています。では、C++Builder VCLアプリケーションのプロジェクトで標準ライブラリのmapを使って試してみましょう。
メインフォーム上にKeyを入力するTEditとボタンのOnClickイベントで結果表示するValue側のTEditを用意しました。
Button1を選択しオブジェクトインスペクタのイベントタブからOnClick項目をダブルクリックしイベントハンドラを作成します。
イベントハンドラのメソッドの上にmapを利用するためのインクルードを1行記述します。
イベントハンドラの中は下記のように記述します。
コード中のl_associativeと言う変数が連想コンテナです。insert()関数を使った登録と直接Keyを指定した入力方法2つ書いています。l_associativeの中を呼び出す場合l_associative[キー]です。
実行すると下記のように、Edit1で「赤」を入力しボタンをクリックすると「きつね」とEdit2に表示されました。
2018年4月23日~5月4日までの月~金曜に毎日ブログを更新。Delphi / C++Builderに関する技術記事からエンジニアの日常まで、さまざまな話題を投稿します。お楽しみに! 日本人スタッフブログを一覧表示できる、こちらのページをブックマークしてください。 |