Блог*
Открыть в Telegram
Блог со звёздочкой. Много репостов, немножко программирования. Небольшое прикольное комьюнити: @decltype_chat_ptr_t Автор: @insert_reference_here
Больше1 924
Подписчики
+224 часа
+37 дней
-630 день
Архив постов
1 925
#prog #cpp
В языке C++ есть понятие pointer-interconvertible объектов. Как сказано в стандарте:
If two objects are pointer-interconvertible, then they have the same address, and it is possible to obtain a pointer to one from a pointer to the other via a
reinterpret_cast.
Разумеется, любой объект является pointer-interconvertible с самим собой. Также pointer-interconvertible являются два члена одного и того же union, а ещё простой класс и его префикс (выражаясь формально, one is a standard-layout class object and the other is the first non-static data member of that object or any base class subobject of that object). Ещё отношение pointer-interconvertible распространяется по транзитивности.
А вот чего вы, наверное, не знали — так этого того, что, вопреки тому, что вы могли ожидать, массив и его первый элемент не являются pointer-interconvertible. Да, даже не смотря на то, что у них один и тот же адрес. И на этот счёт даже есть отдельная сноска в стандарте.1 925
Repost from 🇺🇦 Go performance channel
We are now using Swissmap, a new @golang hash table based on SwissTable that is faster and uses less memory than Golang's built-in map.
This blog by @AndyArt58355407 covers the motivation, design, and implementation of SwissMap for Dolt.
https://dolthub.com/blog/2023-03-28-swiss-map/
1 925
#prog #go #article
Странно, что только сейчас. И, интересно, сохранили ли они рандомизацию порядка обхода мапы.
UPD: я неправильно понял, это не новая версия встроенной мапы в Go.
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
