Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
C++

ECMAScriptやPHPのような連想配列

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に関する技術記事からエンジニアの日常まで、さまざまな話題を投稿します。お楽しみに!

日本人スタッフブログを一覧表示できる、こちらのページをブックマークしてください。


Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

関連記事
C++DelphiRAD Studio

科学プロジェクト向けの高性能なベクトル/行列演算ライブラリ

C++DelphiRAD Studio

Deleaker ProfilerでDelphi/C++Builderアプリケーションのメモリリークを迅速に検出する

C++ニュース

C++Builderでビルドしたオブジェクトファイルの互換性に関する注意点

C++ニュース

C++BuilderでFindFirst/FindNext関数を使用して特殊な拡張子を検索する方法

コメント

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

IN THE ARTICLES