我在cppreference.com中读到 new(自 C++17 起)std::vector::emplace_back
具有对插入元素的引用的返回值。
返回值
- (无)(C++17 前)
- 对插入元素的引用。(C++17 起)
我在想,在向向量插入元素时,为什么我们需要引用它?这怎么可能有用,或者这个新回报的用例是什么?
这是我写的一个示例代码,用于查看该功能。
#include <vector>
int main()
{
std::vector<int> myVec;
for(int i = 0; i < 3; ++i)
{
int& newElement = myVec.emplace_back(i);
^^^^^^^ => why standard should expose the element after inserting.
}
}