Публикации по теме 'cplusplus'
Ежедневный бит(е) C++ | Минимальная стоимость равного массива
Ежедневный бит (е) C ++ # 77, Общие проблемы на собеседованиях: минимальная стоимость для достижения равного массива
Сегодня мы рассмотрим распространенную задачу интервью C++: минимальная стоимость достижения равного массива.
Имея два массива (числа и стоимости) положительных целых чисел, определите минимальную стоимость корректировки массива чисел таким образом, чтобы все элементы имели одинаковое значение.
Стоимость корректировки каждого элемента на единицу равна соответствующему..
Викторина Nec C++ — 0012
Согласно стандарту C++17
В программе есть ошибка времени компиляции. Программа имеет неопределенное/определяемое реализацией поведение. Программа имеет неопределенное поведение. Программа гарантированно выводит:
Ежедневный бит(е) C++ | Сумма расстояний до всех узлов
Ежедневный бит (е) C ++ # 142, Общая задача на собеседовании: сумма расстояний до всех узлов.
Сегодня мы рассмотрим распространенную задачу интервью C++: сумму расстояний до всех узлов.
Учитывая дерево с n узлами, представленное в виде графа с использованием карты окрестностей, вычислите сумму расстояний до всех других узлов для каждого узла.
Идентификаторы узлов находятся в диапазоне [0,n).
Например, в приведенном выше дереве сумма расстояний для узлов 0 и 1 равна 4, а для..
Поток ASM класса C++ с виртуальными методами — Часть 2 Вызовы виртуальных функций
Мы собираемся использовать тот же код, что и в предыдущем разделе , и теперь продолжим код с того места, где оставили его в прошлый раз.
// VirtualFunctionCalls.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
#include <iostream>
using namespace std;
class Parent {
protected:
int valueSet;
public:
Parent() { valueSet = 0; }
~Parent() {}
virtual void CallMe();
virtual int SetMe(int val);
};
void Parent::CallMe() {..
Ежедневный бит(е) C++ | Любопытно повторяющийся шаблон шаблона
Daily bit(e) of C++ #218, Техника C++ для передачи информации о типе производного класса в базовый класс: Curiously Recurring Template Pattern.
Curiously Recurring Template Pattern (CRTP) — это метод C++, позволяющий нам передавать информацию о типе производного класса в базовый класс.
Типичным вариантом использования CRTP является поддержка Mixin, когда мы инкапсулируем функциональность в базовый класс, не полагаясь на виртуальную диспетчеризацию. Таким образом, производный класс..
Ежедневные кусочки C++ | станд::очередь
Ежедневный бит C++ № 251. Адаптер контейнера очереди FIFO: std::queue.
std::queue — это адаптер контейнера, реализующий интерфейс очереди FIFO.
Варианты резервных контейнеров: std::deque и std::list .
#include <queue>
std::queue<int> q;
// q.size() == 0, q.empty() == true
// push a new element into the queue
q.push(1);
// q.front() == 1, q.back() == 1
// pop an element from the front of the queue
q.pop();
q.push(2);
q.push(3);
q.push(4);
while(not q.empty()) {..
Указатели на языке C
1. Введение
C — очень мощный язык программирования, который используется многими разработчиками программного обеспечения для разработки различного программного обеспечения. Однако для новичка язык C довольно сложен для понимания. Большая часть трудностей в изучении C возникает из-за путаницы с концепцией указателей. В этой статье я объясню концепцию указателей с помощью некоторых фрагментов кода.
2. Указатели, адреса и переменные
Указатель — это переменная, которая содержит..