Публикации по теме 'cplusplus'


Ежедневный бит(е) C++ | [[nodiscard]] атрибут
Ежедневный бит (e) C++ # 113, атрибут C++ 17 [[nodiscard]]. C++17 представил атрибут [[nodiscard]] , который вызывает предупреждение компилятора, когда результат вызова функции отбрасывается. Как минимум, этот атрибут следует использовать для функций, выполнение которых требует больших затрат, и функций запроса, которые можно спутать с их аналогами действий. struct MyStruct { [[nodiscard]] ExpensiveResult expensive_call(); }; struct CustomVector { // C++20 - optional..

Загрузчики, библиотеки и исполняемые файлы ELF в Linux
Цель следующего потока символов ASCII - пролить свет на область, которая, вероятно, не является общеизвестной даже для опытных разработчиков системы: загрузчики, библиотеки и исполняемые файлы в экосистеме ELF Linux. Во-первых, мы попытаемся понять, что происходит, когда мы запускаем базовую программу на нашей машине с Linux. Затем мы обсудим библиотеки и то, что они приносят. Покройте различия между статическими и динамическими библиотеками и исполняемыми файлами и, наконец,..

Как добавить автодополнение в консольное приложение C++
Автозаполнение, без сомнения, полезный инструмент. Много раз при поиске чего-либо в Google я пишу первые несколько символов и позволяю ему завершить слово (а иногда и предложение) за меня. В этой статье я опишу, как добавить автодополнение в ваше приложение на C++. Предположим, у вас есть приложение, в котором вы хотите, чтобы пользователь ввел некоторый текст, и текст, который пользователь будет вводить, почти всегда будет частью набора слов или предложений, вы можете помочь..

Что нового в Buckaroo 2?
Что нового в Buckaroo 2? Мы рады анонсировать Buckaroo v2.0.0! Buckaroo был переработан, чтобы учесть уроки, извлеченные из v1.x, учесть ваши отзывы и закрыть более 85 проблем в процессе. Мы также удалили 17k строк кода Java и заменили их 8k F # ! 🙌 Вот ключевые моменты ... Live at Head - зависит от движущихся ветвей и тегов Теперь вы также можете рассматривать ветки и теги Git как версии! Благодаря нашему механизму блокировки мы гарантируем воспроизводимость установки,..

Современная библиотека парсера C++: Часть 1
«Большая идея» состоит в том, чтобы представить грамматики в виде определений типов и использовать универсальное программирование для создания логики синтаксического анализа для произвольной грамматики. Мы сделаем это таким образом, чтобы код был легко оптимизируемым, и по ходу дела мы рассмотрим тесты и даже некоторые IR, сгенерированные LLVM из компилятора Clang. Мы начнем с простейшего примитива, который можно разобрать, с одного символа. Мы представим это так: template <char..

Параметры шаблона концепции
Я решил сделать перерыв в написании <=> и вместо этого поговорить о Концепциях. Одна из вещей, которую вы не можете сделать с понятиями, — это использовать их в качестве параметров шаблона. Это означает, что вы не можете составлять концепции каким-либо образом, кроме строгого использования && или || . Это по-прежнему имеет много хорошей функциональности, но я столкнулся с несколькими ситуациями, когда немного лучший способ составления концепций помог бы. Я подумал, что..

Интеграция библиотеки LibTorch в QT для вывода графического процессора
Qt — это мощная среда для создания кроссплатформенных приложений с графическим интерфейсом. Для сценариев производственного развертывания вам необходимо интегрировать модели, разработанные в среде машинного обучения PyTorch, в ваш C++ QT. Чтобы загрузить модель PyTorch в C++, вам необходимо преобразовать модель в формат сценария torch. Вы можете найти подробные инструкции по преобразованию моделей Pytorch в скрипт torch здесь . Скачать библиотеку libtorch Перейдите на официальный сайт..