Каков пример, когда в результате преобразования lvalue в rvalue удаляются cv-квалификаторы?C++

Программы на C++. Форум разработчиков
Anonymous
Каков пример, когда в результате преобразования lvalue в rvalue удаляются cv-квалификаторы?

Сообщение Anonymous »

В разделе Преобразование L-значения в r-значение стандарт C++23 гласит ([conv.lval]#1, выделено мной):

Значение gl нефункционального типа T может быть преобразовано в значение prvalue.44
Если T является неполным type, программа, требующая этого преобразования, является неправильной.
Если T не является типом класса, типом prvalue является неполная cv версия T .
В противном случае тип значения prvalue — T.45

Не могли бы вы привести пример, где это происходит?
т.е.:
  • начинается со значения glvalue типа T, который не является классом,
  • выполняется преобразование lvalue в rvalue, и
  • мы получаем prvalue типа std ::remove_cvref_t


Подробнее здесь: https://stackoverflow.com/questions/785 ... oves-cv-qu

Вернуться в «C++»