ページ 1 / 1
std::vectorを使うにはデフォルトコンストラクタが必要ですが
Posted: 2013年4月12日(金) 22:58
by dom
コード:
class Hoge;
std::vector<Hoge> v;
初期化忘れを防ぐためにHogeには引数をとるコンストラクタのみ持たせようと考えています。
しかし、そうするとvectorに入れることができません。しかたがないので
・デフォルトコンストラクタを追加し、あとから初期化メソッドで初期化。
・std::vector<Hoge*>のよにポインタを持たせる
というのを考えていますが、どちらが良いでしょうか。
また、他に何か良い方法がありますでしょうか?
Re: std::vectorを使うにはデフォルトコンストラクタが必要ですが
Posted: 2013年4月12日(金) 23:26
by dom
すみません。自己解決しました。
resizeでエラーが出ており、初期値を渡すことでなおりました。