class X {
public:
X() {}
X(const X&) {
std::cou << "copy constructor";
}
X(X&&) {
std::cout << "move constructor";
}
};
X func() { return X(); }
int main() {
X x(func()); // nothing is printed
}
我认为必须调用move构造函数,但是复制构造函数和move构造函数都不会被调用。这是因为抄袭吗?