Начал появляться код тех самых навайбкоденных проектов, который изменит мир и т. д. Ну а мы начинаем потихоньку смотреть код этих проектов, в том числе и сквозь призму статического анализа.
Подробности по ссылке🔗
#статья #вайбкодинг #cpp
Подробности по ссылке
#статья #вайбкодинг #cpp
Please open Telegram to view this post
VIEW IN TELEGRAM
Что это тут у нас?! Ошибка из проекта Erlang! Сможете найти?
О других ошибках из этого проекта можно почитать в статье🔗
#cpp #ошибка
BIF_RETTYPE system_info_1(BIF_ALIST_1)
{
....
if (is_tuple(BIF_ARG_1)) { // L2778
....
} else if (BIF_ARG_1 == am_scheduler_id) { // L2782
....
}
....
else if (BIF_ARG_1 == am_garbage_collection) { // L2903
....
} else if (BIF_ARG_1 == am_fullsweep_after) { // L2921
....
}
else if (BIF_ARG_1 == am_garbage_collection) { // L3053
....
} else if (BIF_ARG_1 == am_instruction_counts) { // L3056
....
}
....
else if (ERTS_IS_ATOM_STR("halt_flush_timeout", BIF_ARG_1)) { // L3552
....
}
}
О других ошибках из этого проекта можно почитать в статье
#cpp #ошибка
Please open Telegram to view this post
VIEW IN TELEGRAM
Как работает выбор catch-блока при обработке исключений
Если таблетка знает, что лечить, может, и исключение само может понять, когда нужно остановиться в своём путешествии по стеку? В прикладном программировании часто хватает и подобного описания, но иногда хочется деталей. Что ж, разберёмся в них!
Переходите по ссылке🔗
#cpp #статья
Если таблетка знает, что лечить, может, и исключение само может понять, когда нужно остановиться в своём путешествии по стеку? В прикладном программировании часто хватает и подобного описания, но иногда хочется деталей. Что ж, разберёмся в них!
Переходите по ссылке
#cpp #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
Новый крутой материал по геймдеву 🔥
В своем блоге опубликовали первую часть книги Сергея Кушниренко "Game++. Часть 1.1: С++, движки и архитектуры". Это сборник размышлений о языке программирования C++, алгоритмах и практиках в контексте разработки игр — о его сильных и слабых сторонах, практических решениях и устоявшихся способах работы.
В общем, лучше пойти почитать! Переходите по ссылке🔗
#cpp #книга #gamedev
В своем блоге опубликовали первую часть книги Сергея Кушниренко "Game++. Часть 1.1: С++, движки и архитектуры". Это сборник размышлений о языке программирования C++, алгоритмах и практиках в контексте разработки игр — о его сильных и слабых сторонах, практических решениях и устоявшихся способах работы.
В общем, лучше пойти почитать! Переходите по ссылке
#cpp #книга #gamedev
Please open Telegram to view this post
VIEW IN TELEGRAM
Ценность квалифицированного программиста смещается в сторону умения проводить обзоры кода. Генерировать код становится проще, но всё так же важно проверять его с точки зрения качества декомпозиции, корректности реализации, эффективности, безопасности.
Посмотрим на примере маленького проекта markus, созданного с помощью Claude Opus, почему важно понимать сгенерированный код и уметь видеть, что скрывает красивый текст программы.
Переходите по ссылке🔗
#статья #cpp
Посмотрим на примере маленького проекта markus, созданного с помощью Claude Opus, почему важно понимать сгенерированный код и уметь видеть, что скрывает красивый текст программы.
Переходите по ссылке
#статья #cpp
Please open Telegram to view this post
VIEW IN TELEGRAM
📣 Напоминалка: пройти бесплатный курс от PVS-Studio!
Друзья, давайте создадим язык программирования на нашем курсе! Он абсолютно бесплатный и вот, что он может дать:
- Новые знания о языке программирования и о том, как машина понимает, что мы от нее хотим.
- Реализуете свой лексер в коде.
- Вспомните грамматику и разберете метод рекурсивного спуска.
- На практике внедрите переменные и функции в свой язык.
- Научитесь вызывать функции и правильно определять тип возвращаемого значения.
- Напишете свой эвалюатор.
Всего 10 уроков, где будет минимум сухой теории и максимум практики👍
Подробнее можно почитать тут🔗
#курс #cpp #programming
Друзья, давайте создадим язык программирования на нашем курсе! Он абсолютно бесплатный и вот, что он может дать:
- Новые знания о языке программирования и о том, как машина понимает, что мы от нее хотим.
- Реализуете свой лексер в коде.
- Вспомните грамматику и разберете метод рекурсивного спуска.
- На практике внедрите переменные и функции в свой язык.
- Научитесь вызывать функции и правильно определять тип возвращаемого значения.
- Напишете свой эвалюатор.
Всего 10 уроков, где будет минимум сухой теории и максимум практики
Подробнее можно почитать тут
#курс #cpp #programming
Please open Telegram to view this post
VIEW IN TELEGRAM
Тема неопределённого поведения (UB) в языке C++ освещается и обсуждается многие годы, но это не значит, что она исчерпала себя. Это плата, которую программисты отдают за эффективные оптимизации кода, такие как удаление ряда проверок.
C++ - опасный инструмент, и не помешает лишний раз напомнить, как правильно держать его в руках. Причём с приходом инструментов вайб-кодинга ситуация, скорее всего, даже ухудшится, так как станет ещё сложнее удерживать неопределённое поведение под контролем. Обсудили эту тему, заглянув в будущее.
Посмотреть можно тут:
- Наш сайт
- VK Video
- Rutube
- YouTube
#доклад #cpp
C++ - опасный инструмент, и не помешает лишний раз напомнить, как правильно держать его в руках. Причём с приходом инструментов вайб-кодинга ситуация, скорее всего, даже ухудшится, так как станет ещё сложнее удерживать неопределённое поведение под контролем. Обсудили эту тему, заглянув в будущее.
Посмотреть можно тут:
- Наш сайт
- VK Video
- Rutube
- YouTube
#доклад #cpp
Мы уже прошли через базовое выравнивание полей и изучили, как наследование наслаивает данные друг на друга. Казалось бы, теперь-то всё, все ловушки изучены. Но не тут-то было! Есть у этой темы ещё одна, по-настоящему тёмная сторона, про которую не так часто говорят. Одно короткое слово virtual полностью переписывает "геометрию" класса, внося в выравнивание свои коррективы, которые трудно игнорировать.
Давайте разберёмся, что на самом деле происходит под капотом, когда выравнивание сталкивается с виртуальностью. Переходите по ссылке🔗
#статья #cpp
Давайте разберёмся, что на самом деле происходит под капотом, когда выравнивание сталкивается с виртуальностью. Переходите по ссылке
#статья #cpp
Please open Telegram to view this post
VIEW IN TELEGRAM
Если у вас кроссплатформенный проект на C или C++, то, как правило, вы не завязываетесь на одну систему сборки, а используете генератор сценариев для сборочных систем. Самый распространённый из них, CMake, недавно получил официальную интеграцию со статическим анализатором PVS-Studio для этих языков.
Подробнее по ссылке
#cpp #статья #PVS_Studio
Please open Telegram to view this post
VIEW IN TELEGRAM