Код: Выделить всё
#include
struct S {
S() = default;
S(S&) {
std::cout flag;
S y = flag ? std::move(s) : s;
}
Если флаг неверный, y создается копией из S, что нарушает мои ожидания категории условного оператора, чтобы быть RValue, и, следовательно, конструкция, чтобы быть выбранным.>
Подробнее здесь: https://stackoverflow.com/questions/797 ... l-operator