Size: a a a

2021 March 20

A

Alex in pro.cxx
а вся вот эта моя работа - последствия противного бага, который бы заметили сразу, если бы были у методов расставлены ref qualifiers
источник

A

Alex in pro.cxx
Если в базовом классе метод тоже ref-qualified, то проблем и у GCC не возникает, но тогда его нужно дважды писать (& и &&).
источник

DF

Dollar Føølish in pro.cxx
Побитый Кирпич
Сразу видно, что эти ref-qualifiers мало кто юзает=)
Так бы багов и разночтений было бы меньше
Слава богу
источник

DF

Dollar Føølish in pro.cxx
Реф квалифаеры надёжный способ отстрелить ногу
источник

CD

Constantine Drozdov in pro.cxx
Dollar Føølish
Реф квалифаеры надёжный способ отстрелить ногу
Отсутствие реф квалифаера самый надёжный способ отстрелить ногу
источник

CD

Constantine Drozdov in pro.cxx
Потому что функция-член без него умеет кастовать xvalue в lvalue
источник

DF

Dollar Føølish in pro.cxx
Откуда берется lvalue ?
источник

CD

Constantine Drozdov in pro.cxx
Dollar Føølish
Откуда берется lvalue ?
std::vector<std::vector<int>> foo();
std::vector<int> & bar() { return foo()[0]; }
источник

DF

Dollar Føølish in pro.cxx
Получается оператор [] должен иметь & после декларации ?
источник

DF

Dollar Føølish in pro.cxx
Потому как const & отлично свяжется и с xvalue
источник

DF

Dollar Føølish in pro.cxx
Не понимаю как починить
источник

CD

Constantine Drozdov in pro.cxx
Dollar Føølish
Потому как const & отлично свяжется и с xvalue
Никак, преобразование xvalue в lvalue почему-то разрешено для const
источник

DF

Dollar Føølish in pro.cxx
Починить никак?
источник

CD

Constantine Drozdov in pro.cxx
да, вот это никак не починить
auto const& x = 0;
источник

DF

Dollar Føølish in pro.cxx
Ок , я поправлю свою мысль . Перегрузка по реф квалифаерам зло ,а не сами реф квалифаеры
источник

CD

Constantine Drozdov in pro.cxx
Dollar Føølish
Ок , я поправлю свою мысль . Перегрузка по реф квалифаерам зло ,а не сами реф квалифаеры
Это как раз попытка спасти value category при возврате ссылок, к сожалению, prvalue -> xvalue остаётся постоянной проблемой
источник

CD

Constantine Drozdov in pro.cxx
источник

DF

Dollar Føølish in pro.cxx
Что ж они расшифровку не пишут для (1) и (2)
источник

CD

Constantine Drozdov in pro.cxx
а что тут расшифровывать-то?
источник

DF

Dollar Føølish in pro.cxx
Ну вам это тривиально а мне интересно чем отличается реализация
источник