map<int, vector<string> >

[戻る]
yu-ya 2004/07/22(木) 00:40:55
表題のように
map<int, vector<string> >
と、mapにvectorを突っ込むとメモリリークを起こす可能性は
高くなるのでしょうか?
(可能性が高くなるというのも変な表現ですが)

そもそも、このような使用は認められていないのでしょうか?

この例でいくと、intは0〜100位まで。
stringがそれぞれ100個ほど格納されます。

vectorへのpush_back、pop_backなどを行います。
頻繁に行う場合はvectorでなくlistを利用します。

yu-ya 2004/07/22(木) 00:44:40
実際は
map<何かのクラス *, それに付随する群>
といった形になります。
「それに付随する群」の部分がvectorやlistになります。

επιστημη 2004/07/22(木) 01:18:13
> mapにvectorを突っ込むとメモリリークを起こす可能性は高くなるのでしょうか?

いいえ

> そもそも、このような使用は認められていないのでしょうか?

ふつーにやります。

# なにか不安でもあるのかしら?

アミバ 2004/07/22(木) 10:31:47
いやあ、STL(というかテンプレート)って凄いですね。
よくこんな物作ったものだ、と感心させられます。これ無しには考えられない。

テンプレートの無いC++なんて、アムロの乗っていないガンダムみたいな物ですね。

επιστημη [E-Mail] [HomePage] 2004/07/22(木) 10:56:49
んー、templateが載っかったのはごく最近(つっても1995頃)なんですけどね。

yu-ya 2004/07/28(水) 23:01:36
[[解決]]
επιστημηさん、ありがとうございました。
安心しました。

職場の先輩に「トリッキー」でと指摘されたので、
少し不安になっただけです。

一度、勉強しなおしてみようと思います。

επιστημη 2004/07/28(水) 23:10:08
どこがどぉトリッキーなんかなぁ…ようわからんが。

シャノン 2004/07/29(木) 01:28:43
テンプレートなんてみんなトリッキーなんですよきっと。
STL ほど巧妙なものであれば尚更に。

PAI 2004/07/29(木) 08:24:48
> 職場の先輩に「トリッキー」でと指摘されたので、
もし、コードの流れについてでなく、

> map<int, vector<string> >
自体についていっているのであれば、
その先輩を殴っていい。俺がゆるす。

int に対して、複数の string が対応している。
あたりまえであって、何らトリッキーではない。

char** とかを使って書くほうがずっとトリッキーなコードになるだろうに。

古いスレッドには追加発言できません。