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


Как статические переменные ведут себя в нескольких библиотеках
При разработке программного обеспечения принято делить код на несколько библиотек для обеспечения модульности и возможности повторного использования. Когда в программе используется несколько библиотек, важно понимать, как ведут себя статические переменные в этих библиотеках. В этой статье рассматривается поведение статических переменных в таких сценариях с акцентом на адрес памяти и изменения значений при доступе к статическим переменным из разных библиотек. Статические переменные и..

Ежедневный бит(е) C++ | Сумма областей O(1)
Ежедневный бит (е) C ++ # 191, Общая задача на собеседовании: сумма областей O (1). Сегодня мы рассмотрим распространенную задачу интервью C++: O(1) сумма областей. Учитывая сетку целых чисел, предоставьте метод, который вычисляет сумму субрегиона: int64_t Grid::region_sum(Координата сверху_слева, Координата снизу_справа) const; Метод должен работать в O(1) ; однако вам разрешена предварительная обработка и O(|grid|) дополнительная память. Прежде чем вы продолжите..

std::visit — это круто, и вот почему
std::visit — это круто, и вот почему Одной из очень немногих особенностей стандартной библиотеки C++, которая мне безоговорочно нравится, является расширение std::visit . Он уменьшает объем шаблонного кода, убивает нескольких зайцев одним выстрелом и при этом не жертвует производительностью. Итак, давайте посмотрим, как его использовать. Шаблон посетителя Шаблон «Посетитель» является более сложным шаблоном проектирования ООП, но как только вы его поймете, он станет отличным..

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

LeetCode — Сортировать цвета
Постановка задачи Дан массив nums с n объектами красного, белого или синего цвета, отсортируйте их на месте так, чтобы объекты одного цвета были рядом , с цветами в порядке красный, белый и синий. Мы будем использовать целые числа 0 , 1 и 2 для обозначения красного, белого и синего цветов соответственно. Вы должны решить эту проблему, не используя библиотечную функцию сортировки. Постановка задачи взята с: https://leetcode.com/problems/sort-colors Пример 1:..

Установка и отладка Torch и Torchvision C++ в Linux
Пример отладки RoIAlign от Torchvision Введение В этом руководстве мы собираемся установить библиотеки C++ Torch и Torchvision на компьютер с Linux для отладки функции, которая написана не на Python, а на C++. Поскольку интересующая нас функция написана на C++, а не на Pytorch , мы не можем отлаживать ее из Python API в Torchvision , поэтому нам нужно углубиться в код C++. Если вы хотите узнать больше о том, как связываются Python и C++ и как код C++ вызывается из Python, вы..

LeetCode 203- Удалить элементы связанного списка
Вопрос : Учитывая head связанного списка и целое число val , удалите все узлы связанного списка, имеющие Node.val == val , и верните новый заголовок . Пример 1: Input: head = [1,2,6,3,4,5,6], val = 6 Output: [1,2,3,4,5] Решение: В данной задаче мы должны удалить все узлы из связанного списка, и значение val этих узлов будет передано нам в качестве входных данных. Во-первых, мы проверим, является ли связанный список пустым или нет. Если да, верните null..