C++ ポインタvector配列への詰め替え
vector型から ポインタvector型への変換を行いたいです。
- const std::vector<T>&からconst std::vector<T*>&への変換
前提
C++の使用歴が浅く、不勉強であることは承知しております。
社内でC++がわかる人もおらず、前任者もいないため困り果てています。
社内の遺産的なコードに手を入れている関係で大きく作り直すことは不可能であり、
今回、このような対応をすることとなりました。
発生している問題・エラーメッセージ
const std::vector<T>&から、const std::vector<T*>&への変換方法がわからない。
該当のソースコード
C++
1 2void ClassA::MethodA(const std::vector<T> & arg1) 3{ 4 const std::vector<T*> arg2; 5 /* 6 ここで、arg1からarg2への詰め替えを行いたい。 7 この詰め替え方法がわからないです。 8 */ 9 10 // 詰め替えたarg2をMethodBの引数として使用したい。 11 MethodB(arg2); 12} 13 14void ClassA::MethodB(const std::vector<T*>& arg3) 15{ 16 //引数arg3を使用して処理を行う 17}
試したこと
arg2に対して、push_backを行うときにnewなどを行いましたが、メモリリークを引き起こしてしまい、
できませんでした。
何をどうすれば、新しいvectorに詰め替えることができるのか見当もつかず困り果てています。
補足情報(FW/ツールのバージョンなど)
ツールはvisual studio 2012、言語はC++です。
回答2件
あなたの回答
tips
プレビュー