Привет! Программирую на C++ / Qt / QML в среде разработки QtCreator уже 6-ой год. У меня есть определенные пересечения мыслей с мозгом груга и еще мне постоянно хочется избавиться от глупой и рутинной работы, которая есть на разных этапах разработки. Одна из таких работ - возня с IDE и рабочим окружением, особенно в мире C++ разработки. В статье постараюсь раскрыть проблему и описать свой текущий подход к решению.
Рубрика «c++» - 20
Рабочая C++ IDE в docker container
2024-10-09 в 13:51, admin, рубрики: c++, containers, docker, IDE, QtCreator, virtualizationНекоторые малоизвестные фичи, фокусы и причуды языка C
2024-10-03 в 13:23, admin, рубрики: C, c++, clang, Компиляторы, ПрограммированиеВ этом посте разобраны некоторые фокусы, причуды и фичи языка C (некоторые из них – весьма фундаментальные!), которые, казалось бы, могут сбить с толку даже опытного разработчика. Поэтому я потрудился сделать за вас грязную работу и (в произвольном порядке) собрал некоторые из них в этом посте. Примеры сопровождаются ещё более вольными краткими пояснениями и/или листингами (некоторые из них цитируются).
Конечно же, здесь я не берусь перечислять абсолютно всё, так как факты из разряда «функция nan() не может устанавливать errno, поскольку в определённых ситуациях поведёт себя как strtod()»Читать полностью »
Zero-cost Property в С++
2024-10-02 в 19:11, admin, рубрики: c++, c++11, code, example, examples, optimization, properties, property, syntax sugar, tricksРасскажу об одном решении которое имеет больше смысла в качестве упражнения а не практической пользы. Постановка задачи звучит так: Хочу получить в C++ семантику property как в C# и без накладных расходов.
В начале будет результат к которому я пришел, затем пояснения и выводы.
К слову, компиляторы Microsoft имеют способ описать property но это не является частью стандарта C++.
Сразу отмечу что property получились с значительными ограничениями и больше подходят для имитации SwizzlingЧитать полностью »
Как устранить первопричину уязвимостей безопасности памяти
2024-09-30 в 13:01, admin, рубрики: c++, kotlin, memory safety, Rust, ruvds_перевод, безопасность памяти, устранение уязвимостей
Уязвимости безопасности памяти остаются серьёзной угрозой для защиты ПО. Мы, работники Google, считаем, что путь к крупномасштабному устранению этого класса уязвимостей и к защищённому ПО заключается в Safe Coding — подходе secure-by-design, отдающем приоритет переходу на безопасные по памяти языки.
В этом посте мы покажем, почему стремление к Safe Coding при создании нового кода быстро (хотя и контринтуитивно) снижает риски безопасности кодовой базы в целом, позволяя наконец-то прорваться через неподдающееся плато уязвимостей безопасности памяти и начать экспоненциальное снижение их количества с сохранением масштабируемости и экономности.
Также мы приведём обновлённую статистику того, как благодаря переходу на безопасные по памяти языки, процент уязвимостей безопасности памяти в Android упал за шесть лет с 76% до 24%.Читать полностью »
Мой опыт в переводе между типами С++ и С#
2024-09-27 в 19:17, admin, рубрики: C#, c++, opencv, windows forms, взаимодействие типов, разработка, специализированное ПО, формат данныхНа существующем производстве была поставлена задача по разработке специализированного ПО. Для реализации ПО был выбран стек технологий:
-
Windows Forms – это платформа пользовательского интерфейса для создания классических приложений Windows от компании Microsoft. На платформе используется визуальный конструктор встроенный в Visual Studio и язык программирования С#;
-
OpenCV – это библиотека компьютерного зрения, которая будет использоваться для работы с изображениями. В данном случае выбран язык программирования С++ для работы с обновленной библиотекой.
std::array в С++ не медленнее массива в С
2024-09-27 в 11:44, admin, рубрики: array, c-cpp, c++, c++ библиотеки, c++0x, c++11, C++14, c++17, C++20, c++23Или почему не нужно бояться того, что удобно работает.

Стойте! Уберите руки от клавиатуры, дайте человеку сказать! У этой статьи есть обоснованные причины и благая цель! В прошлой моей статье о массивах (которую необязательно читать для понимания статьи этой) некоторые читатели выражали озабоченность тем, что std::arrayЧитать полностью »
Заметки по ROS: Простое введение в трансформации и tf в ROS
2024-09-27 в 5:26, admin, рубрики: c++, ROS, робототехникаЯ начинаю серий статей о ROS, где планирую раскрыть в деталях и рассказать о возможных подводных камнях при работе с основными компонентами, из которых состоит платформа для разработки робототехники ROS. Я буду делиться информацией, которую получил на основе собственного опыта работы с ROS. Статьи будут представлены в виде небольших заметок. Надеюсь статьи будут полезны читателям Хабра.
Блеск и нищета WebAssembly
2024-09-26 в 9:06, admin, рубрики: c++, dsl, LLVM, SIEM, webassembly, xp, библиотеки, высокая производительность, Компиляторы, языки программирования
Всем привет! Сейчас за окном осенние деньки 2024 года. Вещает Пройдаков Евгений. Сейчас я руковожу группой разработки среды исполнения языка eXtraction and Processing в R&D департаменте Positive Technologies.
Создаем свою простую (C++) библиотеку с документацией, CMake и блекджеком
2024-09-26 в 8:05, admin, рубрики: c++, cmake, doxygen, github, open source, библиотека, создание библиотеки, создание проектаВ мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в нескольких своих проектах однообразный код, который приходилось каждый раз перемещать. Да и хотя бы как упаковать свои идеи и знания в удобный и доступный формат, которым можно будет поделиться с сообществом.
Если вы ловили себя на мысли: «А почему мне бы не создать свою полноценную библиотеку?», то я рекомендую прочитать вам мою статью.
CodeChecker: анализируем большой проект на С++ быстро, эффективно и бесплатно
2024-09-18 в 9:43, admin, рубрики: c++, clang, clang static analyzer, codechecker, open source, анализаторы, статический анализПривет! Меня зовут Давид, еще недавно я был стажером YADRO,Читать полностью »
