Search code examples
c++c++11tuplesreturn-value-optimization

Return value optimization of values unpacked from std::tuple


Are there any compilers capable of performing return value optimization on multiple values returned from a function through std::tuple? To be clear, in the following code, are there any compilers capable of avoiding unnecessary copies?

std::vector<int> a;
std::list<float> b;
std::tie(a,b) = myFunctionThatReturnsAVectorAndList();

Solution

  • It's not worth worrying anymore. If the compiler cannot perform RVO, move semantics will kick in.