ЭТО БЛОГ НБРК

ДБРО ПОЖА В МОЙ БЛОГ . ТУТ Я ПУБЛ ВСЯК РАЗН ЗПСИ И ЗМТК О ПРОГ , ЯЗКЕ ИЛИ ДАЖЕ О ЖИЗН . В ОСНО ДЛЯ СЕБЯ , ЧТОБ ПТОМ СМТР ИЗ БУДЩ .

НЕКТ МОИ ТЕХН ПРОЭ ЕСТЬ НА ГТХБ , И ТУТ Я ИНГД ПУБЛ ПРОЧ ИДЕИ ИЛИ ДОП ТЕОР ДОКИ ПО НИМ . В НАСТ МОМТ Я ИССЛ ВОЕН ИГРЫ И КОМП СИМУ .

КСТА , ОЧЕН МНОГ ХОРШ СЛОВ УМЕЩ ВСГО В ЧТРЕ СИМВ , НАПР UNIX, СИ++ ИЛИ НБРК .

Как я подхожу к дизайну API библиотеки на Си

В данной заметке я поделюсь своим видением идеальной библиотеки на Си. Будет предложена простая и понятная организация файлов и директорий в дистрибутиве, которую можно взять за основу, а также небольшие guidelines по общему дизайну современного API на языке Си.
ЧТАТ ПОЛН →

Перехват malloc()/realloc()/free() для отладки утечек памяти

Перехватывая функции управления памятью в Си, можно хранить полезную информацию о контексте вызова функции, которая хорошо помогает отслеживать утечки памяти.
ЧТАТ ПОЛН →

Базовая работа с GDAL: гипсобатиметрическая модель Земли

Подготовим простенькую C++ модель, возвращающую глубину Мирового океана или высоту над уровнем моря для заданных географических координат (широта, долгота), а также строгую принадлежность данной точки суше либо океану.
ЧТАТ ПОЛН →

Реализация паттерна проектирования Observer на С++17

Идея Паттерн проектирования Observer (наблюдатель) является классическим и элегантным маханизмом динамического оповещения одних объектов об обновлениях состояния других объектов. В нём один или несколько объектов-наблюдателей неким образом подключается к объекту-наблюдаемому, будто-бы подписываясь на его обновления. Наблюдаемое же ничего не знает о своих подписчиках и вызывает их общий метод, когда посчитает нужным, обычно передавая в качестве параметра указатель на самого себя (т.е. на объект-наблюдатель). Таким образом подключенные конкретные наблюдатели асинхронно получают управление и манипулируют конкретным наблюдаемым, полученным во входном параметре.
ЧТАТ ПОЛН →

Трансформация части контейнера с std::transform()

std::transform() Стандартная библиотека C++ STL содержит множество обобщённых и интересных инструментов для работы с контейнерами, что не удивительно, ведь одна из главных причин появления STL – это желание элегантно абстрагировать алгоритмы и отделить их от данных, т.е. от этих самых контейнеров. Один из простых и довольно интуитивных (для функциональных программистов) алгоритмов – трансформация последовательной области контейнера. В двух словах состит он в следующем: применяем функцию (оператор) к одному элементу контейнера, пишем куда-нибудь результат (новое значение элемента), затем передвигаем итераторы обоих контейнеров вперёд и повторяем весь процесс снова.
ЧТАТ ПОЛН →