Size: a a a

2020 July 09

M

Max in pro.cxx
Dmitry
Тут смотря какой функционал закладывать. Кому просто файлы слать, а кому TLS и  WebSocket.
Всё ещё непонятно, почему бы не использовать отлаженную, использующую asio, header-only beast.
А либы, которые предоставляют какое-то минимальное подмножество http — это обычно чьи-то полузаброшенные pet-project'ы, которым далеко до production-ready.
источник

D

Dmitry in pro.cxx
Max
Всё ещё непонятно, почему бы не использовать отлаженную, использующую asio, header-only beast.
А либы, которые предоставляют какое-то минимальное подмножество http — это обычно чьи-то полузаброшенные pet-project'ы, которым далеко до production-ready.
Я посмотрю сегодня. Если она без boost заведется, то вполне себе. Не хотелось бы тянуть полный boost.
источник

D

Dmitry in pro.cxx
источник

ПК

Побитый Кирпич... in pro.cxx
Dmitry
Я посмотрю сегодня. Если она без boost заведется, то вполне себе. Не хотелось бы тянуть полный boost.
Тебе не надо тянуть полный буст, тебе достаточно только boost.system, и хэдеры
источник

D

Dmitry in pro.cxx
Ок, спасибо.
источник

ПК

Побитый Кирпич... in pro.cxx
Хотя мб ещё date_time (или date_time это тоже header-only...), но не уверен
источник

M

Max in pro.cxx
boost.system тоже header-only, так что это не выглядит проблемой.
Ну и оттуда же: https://github.com/boostorg/Beast/issues/231 .
источник

D

Dmitry in pro.cxx
Max
boost.system тоже header-only, так что это не выглядит проблемой.
Ну и оттуда же: https://github.com/boostorg/Beast/issues/231 .
👍
источник

TS

Till Schneider in pro.cxx
Андрей Руссков
ну почему. Взять std::string например. Деструктор что-то делает, а мув зануляет старый инстанс. Однако если бы у нас был destructive move, мы бы мувнув из std::string str; вдруг обнаружили, что деструктор старого объекта вызывать необязательно ибо память занулена, а занулять необязательно потому что мы старым инстансом не будем пользоваться. И остается по сути только memcpy.
простите за некропостинг

>>
 мув зануляет старый инстанс. 

а можно еще как-нибудь ссылку на стандарт? буду благодарен)
источник

АР

Андрей Руссков... in pro.cxx
я говорил не про стандарт а про реализации в компиляторах
источник

АР

Андрей Руссков... in pro.cxx
если мы хотим эффективно реалзовать SSO string, мы так будем делать
источник

TS

Till Schneider in pro.cxx
Андрей Руссков
я говорил не про стандарт а про реализации в компиляторах
понял, спасибо =)
источник

АР

Андрей Руссков... in pro.cxx
а та дискуссия была на тему "что можно выграть если добавить в с++ destructive move"
источник

ПК

Побитый Кирпич... in pro.cxx
Till Schneider
простите за некропостинг

>>
 мув зануляет старый инстанс. 

а можно еще как-нибудь ссылку на стандарт? буду благодарен)
valid, but unspecified state по стандарту, больше нет гарантий
источник

TS

Till Schneider in pro.cxx
Побитый Кирпич
valid, but unspecified state по стандарту, больше нет гарантий
да, это видел, было интересно другое, а именно
вот этот случай
auto tmp = std::move(str);
// str.empty() == true

есть ли какая гарантия в стандарте, что так будет всегда, или это лишь особенности имплементации
источник

ПК

Побитый Кирпич... in pro.cxx
Till Schneider
да, это видел, было интересно другое, а именно
вот этот случай
auto tmp = std::move(str);
// str.empty() == true

есть ли какая гарантия в стандарте, что так будет всегда, или это лишь особенности имплементации
Гарантии нету
источник

D

Danya in pro.cxx
Till Schneider
да, это видел, было интересно другое, а именно
вот этот случай
auto tmp = std::move(str);
// str.empty() == true

есть ли какая гарантия в стандарте, что так будет всегда, или это лишь особенности имплементации
Насколько я знаю ты не имеешь права вызывать методы у объектов moved-from
источник

TS

Till Schneider in pro.cxx
Danya
Насколько я знаю ты не имеешь права вызывать методы у объектов moved-from
имею, если нет precondition
источник

ДЛ

Дмитрий ⬡ Лапшин... in pro.cxx
Danya
Насколько я знаю ты не имеешь права вызывать методы у объектов moved-from
имеешь
источник

ПК

Побитый Кирпич... in pro.cxx
Till Schneider
да, это видел, было интересно другое, а именно
вот этот случай
auto tmp = std::move(str);
// str.empty() == true

есть ли какая гарантия в стандарте, что так будет всегда, или это лишь особенности имплементации
Но если
auto tmp = std::move(str);
tmp.clear();
// str.empty() == true

Тут уже есть гарантия
источник