Создание массива функций в языке c++
🍊 Типобезопасные контейнеры в C: как заставить компилятор ловить ошибки без шаблонов
Положить структуру одного типа в список, предназначенный для другого, а потом искать причину падения программы — вполне реальный сценарий в C. Особенно если контейнер принимает универсальный указатель `void *`: он охотно пропустит данные, смысл которых уже не способен проверить. Дэниел Хупер в статье от 25 июня 2025 года показал способ вернуть такую проверку компилятору. Его идея — связать универсальную структуру данных с типом элемента через объединение `union`, а затем использовать эту связь в небольших макросах...
X-Программирование - 0107 - От массивов к классам: эволюция составных объектов в C и C++
Программирование по своей сути — это искусство управления сложностью. Как только вычислительная задача перестаёт быть тривиальной, возникает потребность собрать разрозненные переменные — числа, строки, флаги состояний — в единый логический блок, описывающий некоторый моделируемый объект. Такой блок можно передавать в функции целиком, хранить в списках, сравнивать, преобразовывать и, что особенно важно, сопровождать без страха нарушить внутренние взаимосвязи. Эта идея, получившая название инкапсуляции...