std::vector<hogehoge *> hoge;

のようにstd::vectorでクラスポインタの連結を使用としたんですが
hoge.push_back( new hogehoge( ) );
と書くと、push_back時に勝手に(new hogehoge( ))が更にコピーされる為
new hogehoge( )の分がメモリリークしてしまうんですが

これは大人しく
std::vector<hogehoge> hoge;
と書くべきでしょうか?

↑だと沢山連結しようとすると何か遅い気がするのですが
そうでもないでしょうか?