以下の関数 foo() の戻りで移動コンストラクター呼び出しをサポートする C++11 標準の句はどれですか?
#include <iostream>
class A
{
public:
A() { std::cout << "Ctor\n"; }
A(const A&) {std::cout << "Copy ctor\n";}
A(A&&) {std::cout << "Move ctor\n";}
};
A foo(A&& ra) { return std::move(ra); }
int main()
{
A a = foo(A());
}
この質問は昨日終了したと思いますが、現在は「保留」にされており、終了の理由は、あまりにもローカライズされているためです。C++11 標準に関する特定の質問をする SO の投稿が「ローカライズされすぎている」と見なされる可能性があることを理解するのは困難です。私にとって、これは用語の矛盾です。標準は、言語について疑問がある場合にすべての C++ プログラマーが探すべき「事実上の」最終文書であるためです。