3種類のキーを持ったデータの検索をしたいのですが、
mapで実現する場合、どんな方法があるのでしょうか
キー int A、キー int B、キー string C、VOL=クラスX
検索はA,B,Cでそれぞれ行うとした場合、以下のようなmapのtypedefを3種類設定することになるのでしょうか?
map<int, クラスX> aa;
map<int, クラスX> bb;
map<string, クラスX> cc;
これですと削除がする場合には3箇所mapを修正するひつようがありますので1箇所で処理でしないのでしょうか?
No.1ベストアンサー
- 回答日時:
3つのmapをまとめてクラスにしてしまい、メソッドを用いて処理を一元化する方法もあると思います。
要素の数が少ないなら、listなどにいれてfind_ifで関数をかえて検索。
boostにはmulti_index_containerなるものもあるようです。
参考URL:http://hw001.gate01.com/eggplant/tcf/cpp/boost_m …
No.2
- 回答日時:
>3種類のキーを持ったデータ
??? それは3種類のmapが(各個独立して)存在するということ?
よく意味が理解できないけれども、
"A, B それと Cでキーを成す"ということならば、
↓のようにできる。
struct KeyType
{
int A;
int B;
std::string C;
bool operator<(const KeyType& rhs) const;
};
class X;
typedef std::map<KeyType, X> Hoge;
回答ありがとうございます。
A,B,Cを合成したものをキーにするものではなく、
A、B,Cのいずれかで検索するという意味でした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミング誰か教えてくれませんか 2 2022/05/14 09:45
- C言語・C++・C# このプログラミング誰か教えてくれませんか 3 2022/05/13 17:27
- その他(プログラミング・Web制作) pythonのmap、結果の利用は1度だけ? 5 2022/06/11 12:33
- Google Maps google map経路検索で、進行方向とmapの向きを一致させたい 3 2022/04/10 14:20
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- その他(パソコン・スマホ・電化製品) 助けて下さい! 裏ワザ教えて下さい! ファーウェイのタブレットBAH-W59 MatePad 10. 2 2022/04/10 09:15
- iPhone(アイフォーン) Google map のルート保存について 1 2022/05/13 11:50
- 英語 日本人で、英語がネイティブ並みに理解できたり、話せる方に質問です。 英語を聞いて理解するまでに、一度 4 2022/11/16 00:30
- Google Maps iOS でのgoogle map の地図を写真で表示する方法を教えて下さい。 Windows でgo 2 2023/06/02 09:56
- Android(アンドロイド) スマホでGoogle Mapを快適に使うためのセンサー 1 2022/04/12 11:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グローバルIPとプライベートIP...
-
「天声人語」をインターネット...
-
eclipseのパッケージって何?
-
IPアドレスの3バイト目の呼び方
-
java eclipse 型に解決できません
-
同じクラスにならない確率を教...
-
CString: 識別子が見つかりません
-
ネスカフェ エクセラ と UCCク...
-
配列の重複する値とその個数を...
-
河合塾のクラス分けについて
-
Applet、Panelのクラス体系につ...
-
中学2年です‼︎ 明日.学級の級長...
-
dllと同じプロジェクトにする方法
-
どこからも呼ばれていない無意...
-
packageとimport の違いって?
-
標準モジュールとクラスモジュ...
-
クラスのプロパティに構造体を...
-
重複エラーを解決するには
-
UMLのクラス図はmain()も含むん...
-
標準入力 System.in について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3年間同じクラスになる確率
-
「天声人語」をインターネット...
-
配列の重複する値とその個数を...
-
自分事ですが、私のLINEのスク...
-
java eclipse 型に解決できません
-
同じクラスにならない確率を教...
-
どこからも呼ばれていない無意...
-
グローバルIPとプライベートIP...
-
担任にプレゼント
-
数学の計算問題。 3年間同じク...
-
クラスのプロパティに構造体を...
-
河合塾のクラス分けについて
-
IPアドレスのクラスAを取得して...
-
共通で使う関数を集めたクラス...
-
自作のクラスファイルがインポ...
-
1 つのヘッダファイルに複数の...
-
ヒートテックやファイバーヒー...
-
dllと同じプロジェクトにする方法
-
main()を持つクラスが2つ以上...
-
同一パッケージにあるクラスが...
おすすめ情報