ここから本文です

CStringの動的配列を作る場合、CStringArrayとstd::vector<CString>だとどっちの方...

アバター

ID非公開さん

2016/2/2315:06:20

CStringの動的配列を作る場合、CStringArrayとstd::vector<CString>だとどっちの方が良いとかありますか?

閲覧数:
986
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

n2q********さん

2016/2/2320:41:27

3つの考え方があります。

(1)CStringArray が良い

簡単、明瞭。迷いが少ないです。何しろ16ビットの時代(MS-DOS + Windows 3.1)から存在しているんですからね。テンプレートじゃないところが潔いというか、初心者の方がコンパイルエラーで悩む場面が大幅に減ります。テンプレート絡みのエラーは慣れていないと大変。

ただ、MFC から抜け出せなくなってしまうとイヤかも。変な習慣が身についてしまった損かもしれません。


(2)std::vector<CString> が良い

STL に慣れている人は(1)じゃ困るでしょう。std::for_each とかも使いたかったりするだろうから。コードの書き方があまりに違うので(1)は避けたいと思う筈。

将来的に STL に慣れたい人も(1)ではその機会を失うことになってしまう。そこのところの弊害も大きいかも知れません。

MFC を消極的に使っている人の場合は(2)です。MFC に関わりたくないけどやむを得ずやってるという場合とか。

で、STL の習慣も変と言えば変です。でも、それが身について損になるかというと、さすがに標準ライブラリですのでね。損ではないでしょう。


(3)両方

選ぶ必要も無いかも知れません。両方です。それぞれの特性を味わうつもりで。

視野を広く保つためにも有意義かもしれません。STL 一辺倒という感覚もまた良いものではないと思います。いろんなライブラリが存在しているわけですので、それぞれの良いところをご自身のコードの取り入れて行くのも大切であろうと思います。

あわせて知りたい

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる