Size: a a a

2020 July 22

CD

Constantine Drozdov in pro.cxx
🎄🎊 R 🎅 Tb| ✡️ 🎊🎄
А если одинаковые, то как за константу доступ получить?
Поделить на размер блока
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in pro.cxx
Constantine Drozdov
Поделить на размер блока
Так тебе нужно между блоками переходить
источник

m

magras in pro.cxx
🎄🎊 R 🎅 Tb| ✡️ 🎊🎄
А если одинаковые, то как за константу доступ получить?
Там массив массивов. Результат деления - индекс в первом массиве, остаток - индекс во втором.
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in pro.cxx
Или блоки в одной памяти лежат?
источник

CD

Constantine Drozdov in pro.cxx
🎄🎊 R 🎅 Tb| ✡️ 🎊🎄
Так тебе нужно между блоками переходить
Нет, у меня vector<unique_ptr<array<T, N>>>
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in pro.cxx
Constantine Drozdov
Нет, у меня vector<unique_ptr<array<T, N>>>
Понятно, у меня в голове это в виде листа почему-то представлялось
источник

CD

Constantine Drozdov in pro.cxx
Олег Беляев
Подскажите контейнер, у которого можно по индексу элемент брать и вставлять в середину быстро(относительно вектора с реалокацией) (кроме дека)
flat_set. deque таким не является, у него вставка как у вектора
источник

CD

Constantine Drozdov in pro.cxx
Логарифм на обеих операциях, если я понимаю, что это. Константы докручиваются на конкретных задачах только
источник

A

Alex in pro.cxx
Constantine Drozdov
Линейная, потому что размеры блоков посередине не могут быть разные
Хм. Глупость какая-то (я про контейнер, а не про ваше объяснение). Я был лучшего мнения о deque.
источник

CD

Constantine Drozdov in pro.cxx
Alex
Хм. Глупость какая-то (я про контейнер, а не про ваше объяснение). Я был лучшего мнения о deque.
Его задачей является не вставка в середину, а реализация вектора при отказе от ContiniousContainer
источник

CD

Constantine Drozdov in pro.cxx
Но вы можете попробовать реализовать то же самое с нефиксированными блоками и сказать, зачем это нужно :)
источник

AT

Andrew Titov in pro.cxx
Constantine Drozdov
Его задачей является не вставка в середину, а реализация вектора при отказе от ContiniousContainer
*contiguous
источник

IZ

Ilia Zviagin in pro.cxx
Alex
Вот я тоже хотел сказать, что в плане вставки set может быть быстрее. Или ещё попробовать deque.
Они одинаковые по быстроте.
В теории.
источник

IZ

Ilia Zviagin in pro.cxx
N 2
так они o(n), для сетов и мапов нормальные, но в сет и мап нельзя дублирующие элементы
Такие вопросы пожалуйста в @supapro
источник

AF

Aidar Fattakhov in pro.cxx
Олег Беляев
Подскажите контейнер, у которого можно по индексу элемент брать и вставлять в середину быстро(относительно вектора с реалокацией) (кроме дека)
rope?
источник

D

Danya in pro.cxx
https://en.cppreference.com/w/cpp/concepts/same_as
А почему надо писать
namespace detail {
   template< class T, class U >
   concept SameHelper = std::is_same_v<T, U>;
}

template< class T, class U >
concept same_as = detail::SameHelper<T, U> && detail::SameHelper<U, T>;

Зачем в хелпер надо писать detail::SameHelper<T, U> && detail::SameHelper<U, T>?
При этом в std::is_same гарантируется эта коммутативность std::is_same<T, U>::value == std::is_same<U, T>::value
Значит это сделано из-за чего-то, связанного с концептами.
Из-за чего? И как бы это могло поломаться, если бы мы сделали только так?
template< class T, class U >
concept same_as = detail::SameHelper<T, U>;
источник

AF

Aidar Fattakhov in pro.cxx
Danya
https://en.cppreference.com/w/cpp/concepts/same_as
А почему надо писать
namespace detail {
   template< class T, class U >
   concept SameHelper = std::is_same_v<T, U>;
}

template< class T, class U >
concept same_as = detail::SameHelper<T, U> && detail::SameHelper<U, T>;

Зачем в хелпер надо писать detail::SameHelper<T, U> && detail::SameHelper<U, T>?
При этом в std::is_same гарантируется эта коммутативность std::is_same<T, U>::value == std::is_same<U, T>::value
Значит это сделано из-за чего-то, связанного с концептами.
Из-за чего? И как бы это могло поломаться, если бы мы сделали только так?
template< class T, class U >
concept same_as = detail::SameHelper<T, U>;
Ну с первого взгляда видно что если кто-то напишет концепт на is_same в другую сторону то это будет ортогональный концепт
источник

D

Danya in pro.cxx
Aidar Fattakhov
Ну с первого взгляда видно что если кто-то напишет концепт на is_same в другую сторону то это будет ортогональный концепт
Я не очень понял что ты имеешь в виду
источник

AF

Aidar Fattakhov in pro.cxx
Danya
Я не очень понял что ты имеешь в виду
Концепты ранжируются по специфичности и в оверлоад резолюшне выбирается наиболее специфичный
источник

D

Danya in pro.cxx
Aidar Fattakhov
Концепты ранжируются по специфичности и в оверлоад резолюшне выбирается наиболее специфичный
Я не очень понимаю как это связано
источник