Re: MSVC: A non-const reference may only be bound to an lvalue
От: so5team https://stiffstream.com
Дата: 23.07.23 07:14
Оценка: 2 (1) +1
Здравствуйте, пффф, Вы писали:

П>Есть код:

П>

П>typedef std::set<unsigned>  UnsignedSet;

П>inline
П>UnsignedSet& operator<<(UnsignedSet &us, unsigned u)
П>{
П>    us.insert(u);
П>    return us;
П>}

П>void serializeUnsignedSet(const UnsignedSet &us);

П>//...

П>serializeUnsignedSet(UnsignedSet() << 2u << 10u); //!!!
П>


П>Как это всё правильно переписать?


Например, добавить еще одну перегрузку для operator<<
inline
UnsignedSet&& operator<<(UnsignedSet &&us, unsigned u)
{
    us.insert(u);
    return std::move(us);
}//...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.