KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I want to fill std::vector (or some other STL container): class Foo { public: Foo(int _n, const Bar &_m); private: std::vector<Foo> fooes_; } 1.Good looking ctor, expensive performance std::vector<Foo> get_vector(int _n, const Bar &_m) { std::vector<Foo> ret; ... // filling ret depending from arguments return ret; } Foo::Foo(int _n, const Bar &_m) : fooes_(get_vector(_n, _m) {} 2. Better performance, worse looking ctor void fill_vector(int _n, const Bar &_m, std::vector<Foo> &_ret) { ... // filling ret depending from arguments } Foo::Foo(int _n, const Bar &_m) { fill_vector(_n, _m, fooes_); } Is it possible to rewrite get_vector function from 1st example with C++0x (move semantics features and so on) to avoid redundant copying and constructor calls?
Tags (comma-separated)
Save Edits
Cancel