Telegram Group Search
👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻👨‍💻

— Что общего у человека перенесшего инфаркт, программиста и капитана низкобортного броненосца?
— Они любят свой монитор
______

Батины Шутки
Please open Telegram to view this post
VIEW IN TELEGRAM
20🤡63
Forwarded from Блог Кучука
This media is not supported in your browser
VIEW IN TELEGRAM
Что я представляю, когда говорят «у нас в команде молодой тимлид»
😁67🦄11
73😱6👏3🦄1
Добавил пункт про рекламу за звёзды, не упустите, пока я не понял сколько это действительно должно стоить!

http://ithueti.com.club/ad
1023🤡2😁1
Люблю эту картинку
😁35😱176🤯5
💋41🥰277
Forwarded from флипы онлайн (Евгений Сабиров)
This media is not supported in your browser
VIEW IN TELEGRAM
16
This media is not supported in your browser
VIEW IN TELEGRAM
Вайбкодинг на расте (в конце гифки он ебнулся об корягу)
42
Forwarded from Experimental chill
Trivially relocatable

В C++ есть большая группа людей (включая меня), которая любит брать оптимизации из C -- mem* функции возможно являются сильнейшим преимуществом C перед многими другими языками в перформансе. В C++ об этом думали и делали аттрибут std::trivially_copyable, который разрешает копировать как memcpy. Отлично работает на примитивных структурах и в целом C++ такой быстрый в том числе и из-за этого.

Но бывают и более интересные кейсы. Когда вы добавляете элементы в std::vector, рано или поздно вам надо будет реаллоцировать. Вы будете копировать числа/делать std::move объектов из предыдущего вектора. В ситуации с числами можно звать memcpy, они тривиальны, всё отлично. Но на самом деле звать memcpy можно и не только на тривиально копируемые типы, а, например, на unique_ptr<T>, или QString (который с ref count), или vector<int>!

Ведь копирование указателей, чисел вида размера/вместимости при тривиальном std::move ни к чему плохому не приведёт. К сожалению, по стандарту так нельзя. Когда вы начинаете делать mem* функции на типы, у которых примитивный std::move, то стандарт ничего для этого не приготовил и только говорит, что вы обязаны вызвать деструктор, и memcpy не позволяет начать жизнь более сложных объектов.

Поэтому в последние лет 6 идёт борьба за то, чтобы внести понятие тривиально релоцируемых типов -- у которых move оператор и move конструкторы устроены так, что это просто копирование по битам. Если быть точным, нужно ещё, чтобы деструктор не делал странных вещей, например, ничего не делал для пустых векторов, нулевых указателей и тд.

Без этого вставки в середину вектора, удаления из векторов долго не могли использовать memcpy тоже для таких типов. Существует ряд оптимизаций, который открывается из этого. В том числе interop с Rust станет слегка попроще :)

6 лет бились (первые года 4 не сильно, комитету в целом нравилось предложение), и таки уехало в феврале этого года в C++26.

Есть отличный блог из 5 небольших частей почитать о том, как это устроено в Qt.

Сам пропозал
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2025/p2786r13.html#abstract
1721
Быть крутым руководителем и «продавать» себя на собеседовании — это два разных навыка. После долгой работы на одном месте или перерыва "мышца" самопрезентации атрофируется. И даже опытные спецы и руководители ловят отказы не по техскиллам, а «потому что» («по итогам беседы», «без объяснений», просто «не подошёл»)

Чтобы освежить навык прохождения интервью и быть готовым к каверзным вопросам, команда LifeCareerBalance подготовила шпаргалку — 135 реальных вопроса для самоподготовки к собеседованию (для IT-специалистов, руководителей и С-Level)

НО! Вам не нужны все 135 вопросов:
🔹 Выбираете тип компании (стартап, гигант, МСП)
🔹 Находите свой грейд
🔹 Получаете 15 ключевых вопросов для вашей цели

В общем это практический инструмент, который добавит +100500 к уверенности

➡️ Перейти и забрать PDF (последний пост)

Реклама. ИП Шигаева Д.Н., ИНН: 772375564620, ОГРНИП: 320774600223513
🤡192
Сохраните для следующего ретро
💔6441
Верим. Щас его Коля зовут.
😁5016👏11
2025/07/14 02:29:04
Back to Top
HTML Embed Code: