Slide 10
Slide 10 text
Named Return Value Optimization(NRVO)
• 戻り値を引数の参照から返すようにするような最適化
// この関数にNRVOが適用されると
auto f() -> std::vector {
std::vector vec = {1, 2, 3, 4};
...
return vec;
}
// あたかもこう書き替えられたかのように動作する
void f(std::vector& ret) {
ret = std::vector{1, 2, 3, 4};
...
}
10