C++ Academy
16.5K subscribers
646 photos
131 videos
1 file
599 links
По всем вопросам- @haarrp

@itchannels_telegram - 🔥 best it channels

РКН: clck.ru/3FmxJF
Download Telegram
Magic Enum — элегантная C++17 библиотека для работы с перечислениями, которая добавляет в них магию рефлексии. Без макросов и boilerplate-кода она позволяет легко преобразовывать enum в строки, проверять наличие значений и даже работать с битовыми флагами.

Библиотека сохраняет constexpr-контекст и поддерживает даже такие экзотические операции, как склейку enum-ов для многоуровневых switch-блоков. Хотя проект заточен под компактные перечисления, его уже используют в продакшене, например, для сериализации или валидации конфигов.

🤖 GitHub

@cpluspluc
🔥11👍74🤬1🤣1
Media is too big
VIEW IN TELEGRAM
🚀 YADRO приглашает C++ разработчиков в команду OpenBMC и встроенных систем!

Если вы хотите создавать сложное программное обеспечение для серверов и систем хранения данных, работать с передовыми технологиями Linux и участвовать в проектах open source, то эта возможность для вас.

📌 Кого мы ищем:

• Ведущего разработчика C++ (Linux/OpenBMC)
• Ведущего разработчика интерфейсов встроенных систем
• TeamLead разработки OpenBMC

🧰 Технологический стек и задачи:

• C++ (стандарты 17, 20, 23), STL, Boost
• Linux-среда, systemd, D-Bus, Yocto, bash, Python
• Работа с ядром прошивки OpenBMC, взаимодействие с UEFI/BIOS
• Разработка и поддержка сложных интерфейсов встроенных систем

💼 Условия работы:

• Гибкий формат: удалённо или в офисах в Москве, Санкт-Петербурге, Екатеринбурге, Нижнем Новгороде и Минске
• Работа с масштабными проектами в уникальной команде инженеров
• Возможность горизонтального и вертикального карьерного роста

💙 Узнайте больше и откликайтесь на вакансии прямо на сайте!
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣5
This media is not supported in your browser
VIEW IN TELEGRAM
База для плюсов 🥲

@cpluspluc
34😁11👍1🔥1
🖥 Круговорот сильных мужчин в IT
Please open Telegram to view this post
VIEW IN TELEGRAM
57🔥23😁20👍10🥱2🥴1
🖥 Теперь писать сложные промты самому не обязательно — OpenAI выпустили генератор, который превращает даже простой запрос в подробную инструкцию для ИИ.

Принцип простой: описываете, что хотите получить, нажимаете Optimize — GPT-5 анализирует запрос и выдаёт готовый детализированный промт. Работает бесплатно.

Инструмент может упростить работу с любыми нейросетями, особенно если у вас нет опыта в составлении промтов.

Готовый вы можете сразу попробовать в @Chatgpturbobot
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32😁2
💡 Разбор кода на C++: работа с файлами

Что делает программа:
1. Создаёт файл `test.txt` и записывает в него строку `"hello"`.
2. Закрывает файл.
3. Открывает этот же файл для чтения.
4. Читает его посимвольно и выводит на экран.

Ключевые моменты:
- `std::ofstream` — поток для записи в файл.
- `std::ifstream` — поток для чтения из файла.
- `in.get(c)` — читает по одному символу и возвращает `true`, пока файл не закончился.
- Обязательный вызов `file.close()` перед повторным открытием файла нужен, чтобы записанные данные точно сохранились.

Что выведет:
Без пробелов и переносов — ровно то, что было записано.
👍104
Что выведет код, использующий файловый ввод-вывод?
Anonymous Quiz
10%
Ничего не выведет
6%
Ошибка компиляции
27%
Зависит от наличия файла test.txt
58%
hello
👍105🖕2🥰1
This media is not supported in your browser
VIEW IN TELEGRAM
Офер в Яндекс за 48 часов: ищем бэкендеров

В команду нужны опытные бэкенд-разработчики на C++, Python, Java и Go. Приглашаем на Мультитрек — онлайн-программу быстрой адаптации.

Всего за 2 дня вы можете получить офер:
• До 18 августа подать заявку и пройти предварительный отбор
• 23 августа решить задачи на технических секциях
• 24 августа пройти финальное собеседование и получить офер
После этого будет возможность поработать с тремя командами и выбрать проект по душе.

Создаём технологии, которые меняют мир. Присоединяйтесь! Оставляйте заявку на сайте.

Реклама. ООО "Яндекс". ИНН 7736207543
🖕112👍1🔥1
🔌 C++ REST SDK — проект Microsoft для облачных клиент-серверных решений на C++, который перешёл в режим поддержки. Хотя для новых проектов его уже не рекомендуют, библиотека остаётся рабочей лошадкой для асинхронного взаимодействия с HTTP/JSON API в кросс-платформенных приложениях.

Интересная деталь: несмотря на статус maintenance mode, SDK всё ещё поддерживает все основные платформы — от Windows до Android и iOS. В комплекте идут клиенты для HTTP/WebSockets, парсеры URI и даже oAuth-интеграция, всё на базе современных C++11-фич вроде PPL Tasks.

🤖 GitHub

@cpluspluc
5👍2🔥2🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Vicinae — высокопроизводительный нативный лаунчер для Linux

- Что это: Лаунчер, вдохновлённый Raycast, написан на C++ с использованием Qt. Ориентирован на разработчиков и power-users, он обеспечивает быстрый, преимущественно клавиатурный доступ к действиям в системе без лишнего «тяжёлого» UI.

- Особенности:
- Запуск и поиск установленных приложений
- Индексация файлов с полнотекстовым поиском по миллионам файлов
- Умный эмодзи-пикер с пользовательскими ключевыми словами
- Калькулятор с конвертацией единиц и валют + история
- Защищённая история буфера обмена с поиском по всем копируемым данным
- Быстрые ссылки (shortcuts) для мгновенного доступа
- Интеграция с оконным менеджером (например, копирование данных в активное окно)
- Теминг (светлые и тёмные темы, кастомные темы через конфиг)
- Совместимость с расширениями Raycast — доступ к его стору и установка «в один клик» (не все расширения пока работают)

- Лицензия: GPL-3.0, опен-сорс.

https://github.com/vicinaehq/vicinae
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥92
🚨 Вышла новая версия Boost 1.89.0 — значительное обновление популярной библиотеки для C++. Этот релиз приносит как важные исправления, так и новые возможности для современных проектов.

Среди ключевых изменений — улучшенная поддержка современных стандартов: Asio получил новые функции для работы с аллокаторами, Atomic теперь включает TSAN-инструментацию для анализа многопоточного кода, а Geometry был существенно переработан для повышения точности вычислений. Также появилась новая библиотека Bloom для работы с фильтрами и улучшена поддержка модулей C++20.

🔗 Ссылка - *клик*

@cpluspluc
👍11🔥6❤‍🔥2🥰1👏1
🆕 C23: что нового в стандарте C?
📅 25 августа | 20:00 мск | бесплатно

На вебинаре разберём:
🔹 Основные фичи C23: #embed, constexpr, улучшенные макросы, новые типы и атрибуты
🔹 Обратная совместимость и миграция со старых стандартов
🔹 Что можно применять уже сейчас и как это изменит ваш код

Полезно для:
💡 Программистов на C, которые хотят быть в курсе последних изменений

👉 Регистрируйтесь и узнайте, как C23 повлияет на ваш код:
[
https://otus.pw/LTm1/]

Занятие приурочено к старту курса "Программист С", обучение на котором позволит не только глубоко погрузиться в возможности языка С, но и изучить низкоуровневые особенности устройства UNIX-совместимых ОС и ОС семейства Windows


Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ", ИНН: 9705100963
🔥5👍2
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Полезны и удобный инструмент для работы с данными в JSON

Расширение для VSCode превращает JSON-файлы в наглядные диаграммы, позволяя быстро исследовать структуру и понимать взаимосвязи в данных.

Поддерживаются также YAML, XML и CSV. Все визуализации можно экспортировать в виде изображений.

Полностью бесплатно и с открытым исходным кодом.

https://github.com/ManuelGil/vscode-json-flow

@cpluspluc
👍16🔥63
🆕 Анонс: Proxy 4 — новый шаг в C++-полиморфизме

🟢 Что такое Proxy 4?
Proxy — это header-only, кроссплатформенная библиотека C++20, позволяющая писать полиморфный код без наследования и традиционных виртуальных функций.
Используется в кодовой базе Windows с 2022 года и теперь выходит как зрелая, готовая к продакшену технология.

**Что нового в версии 4?**
- Навыки (Skills): простое подключение возможностей (format, fmt_format, rtti, as_view, slim и др.) через композицию фасадов.
- proxy_view и weak_proxy: удобные типы для нефламентируемых и слабых ссылок.
- Совместное владение: новые API make_proxy_shared и allocate_proxy_shared обеспечивают эффективное разделенное владение без overhead std::shared_ptr.
- Умный диспетчинг и конверсии: возможности weak_dispatch, explicit_conversion_dispatch, улучшенные сообщения об ошибках, понятные концепты proxiable_target, inplace_proxiable_target.
- Рекурсивные фасады: facade_aware_overload_t позволяет строить рекурсивные операторы (например, арифметику, конкатенацию) без преждевременной инстанциации.

Документация теперь размещена на обновлённом сайте — удобная навигация, FAQ, API-справочник, примеры.
Также доступен экспериментальный запуск в Compiler Explorer: попробуйте Proxy прямо в браузере без настройки среды.

Почему это важно?
- Полиморфизм без наследования и виртуалок: менее навязчиво, гибче и возможно производительнее.
- Эффективное управление временем жизни объектов: поддержка владения, заимствования и слабых ссылок.
- Высокая производительность сравнима или превосходит ручной код.
- Расширяемость и гибкость: полиморфизм поверх функций, операторов, конверсий и даже кастомных абстракций.

Что говорят разработчики (reddit-комментарии):
> “Proxy library is like std::any … but adds runtime polymorphism without needing inheritance.”
> — TheFreestyler83

> “It's like doing &something as &dyn Display in Rust… you can do type erasure like virtual interfaces, but without editing types.”
> — qalmakka

> “They claim it's both easier and faster, but … ownership seems very unclear …”
> — Bart_V

Резюме
- Proxy 4 — новый стандарт для полиморфизма в C++.
- Богатая модульная архитектура — расширение навыков через фасады.
- Инструменты: документация, примеры в Compiler Explorer, нативные C++20 возможности.
- Признание от сообщества и множество способов применения, включая заимствование идей из Rust.

🟠 Автор: Mingxin Wang, старший инженер Microsoft: devblogs.microsoft.com/cppblog/announcing-proxy-4-the-next-leap-in-c-polymorphism

@cpluspluc
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍4🔥3
⚡️ Dependabot теперь поддерживает vcpkg

GitHub объявил о расширении возможностей Dependabot — теперь система автоматических обновлений работает с vcpkg, менеджером зависимостей для C/C++ от Microsoft. Это позволит поддерживать актуальность native-библиотек без ручного вмешательства.

Теперь Dependabot отслеживает изменения в vcpkg.json и автоматически создает pull-request'ы для обновления builtin-baseline. Для подключения достаточно добавить конфигурацию vcpkg в файл .github/dependabot.yml.

🔗 Ссылка - *клик*

@cpluspluc
5🔥2👍1