diff --git a/tstl/include/vector.hpp b/tstl/include/vector.hpp index f6448649..12ee837f 100644 --- a/tstl/include/vector.hpp +++ b/tstl/include/vector.hpp @@ -196,17 +196,21 @@ public: ++_size; } - void emplace_back(){ + value_type& emplace_back(){ ensure_capacity(_size + 1); new (&data[_size++]) T(); + + return back(); } template - void emplace_back(Args... args){ + value_type& emplace_back(Args... args){ ensure_capacity(_size + 1); new (&data[_size++]) T{std::forward(args)...}; + + return back(); } void pop_back(){