Следующий код напечатает «Конструктор перемещения» с C ++ 11/C ++ 14 с -фно-элид-конструкторами . Однако с C ++ 17/C ++ 20 и -fno-elide-constructors , нет «перемещения конструктора». Я думал, что это было напрямую создано, не так ли? Это очень анти-интуитивнологично.#include
struct Data {
Data() {
std::cout
Подробнее здесь: https://stackoverflow.com/questions/797 ... py-elision