Size: a a a

2020 March 26

CD

Constantine Drozdov in pro.cxx
Можно подумать у std::deque, который в принципе по incomplete не инстанцируется, есть SFINAE проверка для operator<
источник

АК

Александр Караев in pro.cxx
Constantine Drozdov
Да это какая-то левая отмазка про incomplete, с тем же успехом я могу спросить, можно ли > у вектора когда он incomplete спросить
самое стрёмное, что в стандарте это не прописано
источник

CD

Constantine Drozdov in pro.cxx
Александр Караев
самое стрёмное, что в стандарте это не прописано
Вся библиотека контейнеров кладет болт на SFINAE во всех операциях
источник

АК

Александр Караев in pro.cxx
Constantine Drozdov
Вся библиотека контейнеров кладет болт на SFINAE во всех операциях
и это грустно
источник

CD

Constantine Drozdov in pro.cxx
Угу, я в свое время специализации руками писал из-за этого
источник

АК

Александр Караев in pro.cxx
ну то есть std::vector<std::vector<Incomplete>> будет работать быстро или нет?
источник

CD

Constantine Drozdov in pro.cxx
В смысле быстро?
источник

АК

Александр Караев in pro.cxx
std::vector<Incomplete> noexcept move ctor?
источник

CD

Constantine Drozdov in pro.cxx
Нельзя через SFINAE спрашивать про incomplete для операций
источник

CD

Constantine Drozdov in pro.cxx
Александр Караев
std::vector<Incomplete> noexcept move ctor?
У вектора всегда noexcept
источник

АК

Александр Караев in pro.cxx
тьфу, да, значит всё в порядке.
а то я беспокоиться начал
источник

CD

Constantine Drozdov in pro.cxx
Александр Караев
тьфу, да, значит всё в порядке.
а то я беспокоиться начал
Так и у function он noexcept, наличие noexcept(false) мгновенно отменяет SOO
источник

CD

Constantine Drozdov in pro.cxx
Тут нет никаких проблем, это надо знать только в конструкторе уже
источник

AP

Antony Polukhin in pro.cxx
Constantine Drozdov
@antoshkka а где в разделе "минусы" что теперь мы не можем вычислить что move ctor noexcept и использовать объект в векторе? :)
Ага, и правда есть такое
У нас все мув конструкторы должны быть  noexcept, поэтому мы не чувствуем боли)
источник

CD

Constantine Drozdov in pro.cxx
Antony Polukhin
Ага, и правда есть такое
У нас все мув конструкторы должны быть  noexcept, поэтому мы не чувствуем боли)
Запрет на const поля?)
источник

АК

Александр Караев in pro.cxx
Constantine Drozdov
Запрет на const поля?)
просто нужно делать std::const<int> m_a; вместо const int m_a;
источник

AP

Antony Polukhin in pro.cxx
Constantine Drozdov
Запрет на const поля?)
Тогда объект у нас не перемещаемый
источник

CD

Constantine Drozdov in pro.cxx
Antony Polukhin
Тогда объект у нас не перемещаемый
То есть бывают копируемые неперемещаемые объекты?
источник

AP

Antony Polukhin in pro.cxx
Зачем вы хотите это в fast pimpl класть? И зачем вы пишете константные поля в классах, которые вы хотите перемещать?
источник

CD

Constantine Drozdov in pro.cxx
Я вообще не очень понимаю, зачем константные поля
источник