Библиотека C/C++ разработчика | cpp, boost, qt
19.8K subscribers
1.92K photos
58 videos
16 files
4.16K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
🍴 Что происходит при копировании std::array?

Казалось бы, простой вопрос. Но копирование array работает совсем не так, как у vector.

Проблема: в C++ массивы не копируются обычным =. Но std::array копируется. Как?

⚡️ Ключевое отличие: std::array — это агрегатный тип, а агрегаты копируются поэлементно.

std::array<int, 3> a = {1, 2, 3};
std::array<int, 3> b = a; // Копируются ВСЕ элементы!


Под капотом компилятор генерирует:

b._data[0] = a._data[0];
b._data[1] = a._data[1];
b._data[2] = a._data[2];


❗️ Важно: это происходит на этапе компиляции. Для array<int, 1000> будет сгенерировано 1000 операций присваивания. Или одна memcpy, если компилятор умный.

Ловушка: копирование большого array может быть дорогим. В отличие от vector (копируется только указатель при move), array всегда копирует данные целиком.

Практический вывод: передавайте большие array по ссылке (const std::array<T, N>&), иначе каждый вызов функции скопирует все N элементов.

Библиотека C/C++ разработчика

#под_капотом
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🙏4
This media is not supported in your browser
VIEW IN TELEGRAM
🥱2
😵‍💫 Усиль свои позиции на собесе в Data Science знаниями математики!

Чем важна математика расскажет Мария Тихонова - кандидат компьютерных наук, руководитель исследовательского направления SberAI, доцент факультета компьютерных наук и преподаватель НИУ ВШЭ на курсе «Математика для Data Science» от Proglib Academy.

👀 Мария - человек, который реально работает с LLM и делает так, чтобы модели понимали человеческую речь, а не делали вид.

📌 Добавь в свое портфолио проект, выделись среди конкурентов

Курс предусматривает выполнение практического проекта с фидбеком от экспертов. За проект можно взять темы:
• обучите градиентный спуск для предсказания цен на квартиры
• создадите классификатор тональности или тематики текста
• построите простую рекомендательную систему на матричных разложениях

Бонусы:
- скидка 40% до 30 ноября
- если оплатить до конца ноября, получите курс «Базовая математика» в подарок

➡️ Пройти бесплатный тест на знание математики

👇👇👇
Записаться на курс
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
🍕 include-what-you-use — очистка include директив

Ваш файл включает половину стандартной библиотеки, а использует только std::vector?


IWYU (include-what-you-use) — инструмент от Google, который анализирует какие заголовочные файлы реально используются и предлагает минимальный набор includes. Ускоряет компиляцию и делает зависимости явными.


🍴 Установка:

# Ubuntu
sudo apt install iwyu

# Из исходников с нужной версией clang
git clone https://github.com/include-what-you-use/include-what-you-use.git



✏️ Использование:

# Анализ файла
include-what-you-use main.cpp

# С применением исправлений
include-what-you-use main.cpp 2>&1 | fix_includes.py

# Для всего CMake проекта
cmake -DCMAKE_CXX_INCLUDE_WHAT_YOU_USE=include-what-you-use ..



❗️ Основные проблемы, которые находит:

• Лишние includes — файлы, которые не используются
• Транзитивные includes — зависимости через другие заголовки
• Forward declarations — где можно заменить include на forward decl
• Неполные includes — когда используется тип, но не включён его заголовок


✏️ Github

Библиотека C/C++ разработчика

#под_капотом
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 AI сейчас на пике — и математика снова в центре внимания.

«На конференции AIJ только и разговоров, что о AI и математике. Ведь в основе генеративных моделей Gen AI лежит фундаментальная математика.»

Одна из топовых экспертов, кто сегодня участвует на AIJ, преподаёт у нас.

Мария Тихонова — PhD по Computer Science, руководитель направления в SberAI и доцент ВШЭ. Она работает с LLM каждый день и объясняет математику так, как она реально применяется в AI.

🔥 Экспресс-курс «Математика для DS» — 8 недель, чтобы закрыть пробелы и уверенно проходить собесы.

🎁 До 30 ноября:
→ скидка 40%
→ курс «Школьная математика» в подарок при оплате
→ бесплатный тест на знание основ математики

👉
Записаться на курс
🥱5😁1