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

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

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

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

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
🍴 XTML: минималистичный C++‑движок для HTML‑шаблонов

XTML — утилита написанная на C++, предназначенная для обработки шаблонных файлов и генерации динамического HTML.


💡 Ключевые фичи:

Переменные и плейсхолдеры: определяйте переменные и вставляйте их через {{@varName}}
Условная логика и циклы: поддерживаются if, else, while для динамической генерации
Вычисление выражений: математика, строковые операции, работа с массивами
Функции и модули: определяйте функции в шаблонах или расширяйте через C++ DLL

HTML в выражениях: можно генерировать HTML прямо из вычисляемых выражений


❗️Пример:

Шаблон:
<xtml>
var title = "XTML Example Page";
var a = 15;
var b = 7;
var comparison = expr {
if (a > b) {
print("a is greater than b");
}
else {
print("a is not greater than b");
}
};
</xtml>

<html>
<head>
<title>{{@title}}</title>
</head>
<body>
<p>{{@comparison}}</p>
</body>
</html>


Сборка и вывод:
xtml build template.xtml


<html>
<head>
<title>XTML Example Page</title>
</head>
<body>
<p>a is greater than b</p>
</body>
</html>



✏️ Github


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

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
🤝 Перестаньте ждать, пока вас найдут: как самому выходить на фаундеров и получать офферы

Рекрутеры тянут неделями, ATS теряет резюме, а фидбека вообще можно не дождаться. Совсем другая история — написать напрямую CTO или тимлиду: ответ приходит за день-два, а созвон назначают сразу. Учимся находить технических лидеров стартапов и продуктовых компаний и писать так, чтобы точно получить ответ.

👉 Статья

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

#буст
🔥3😁2🤔1
⚙️ ObjectBox: встраиваемая БД для C/C++, которая реально быстрая

Если вы устали от SQLite и ищете что-то более производительное для мобильных приложений или IoT-устройств — взгляните на ObjectBox.

📕 Что это за зверь?

Объектно-ориентированная встраиваемая база данных с открытым исходным кодом. Написана на C, но имеет отличные биндинги для C++.

Почему это интересно:

On-device векторная БД — управление векторными данными и быстрый vector search из коробки
Минимальные ресурсы — бинарник всего ~1 МБ, идеально для IoT-шлюзов, микроконтроллеров, ECU
Встроенные связи — отношения между объектами работают нативно
Статическая типизация — проверки и оптимизации на этапе компиляции
Автоматические миграции схемы — никаких update-скриптов
ObjectBox Sync — синхронизация данных между устройствами и серверами

👉 GitHub

🤌 Бонусы для подписчиков:
Скидка 40% на все курсы Академии
Розыгрыш Apple MacBook
Бесплатный тест на знание математики

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

#буст
👍3❤‍🔥2🥰1
🍴 Интеграция с системами сборки

"CMake генерирует Compilation Database, но модули не работают — что не так?" — частый вопрос при настройке инфраструктуры разработки.

Статья объясняет, почему правильная интеграция системы сборки критична для работы модулей и что должны делать build-системы.

❗️Что нужно от системы сборки:

• генерация полной Compilation Database со всеми модулями
• режим "build BMIs only" для быстрой проверки без полной сборки
• правильные флаги компиляции с -fmodule-file для всех зависимостей

Основной фокус — мост между системой сборки и инструментами анализа кода, и почему модули усложнили эту интеграцию.

Особенно важно для мантейнеров систем сборки (CMake, Bazel, Meson), которые хотят обеспечить first-class поддержку модулей.

Вы поймёте, что модули C++20 нарушили фундаментальное предположение о независимости единиц трансляции, и все инструменты вынуждены адаптироваться к новой реальности.

✏️ Статья


🔹Курс «Алгоритмы и структуры данных»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹Сайт Proglib

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

#буст
👍21