Библиотека C/C++ разработчика
6.81K subscribers
655 photos
691 videos
8 files
941 links
Полезные материалы по всему, что может быть полезно плюсовику/сишнику. По всем вопросам @evgenycarter
Download Telegram
Основы С++

C++. Урок 1. Введение
C++. Урок 2. Обзор редактора
C++. Урок 3. Процедурный стиль программирования
C++. Урок 4. Динамическая память
C++. Урок 5. Отличия С и C++
C++. Урок 6. ООП. Инкапсуляция классов
С++. Урок 7. Наследование + статический полиморфизм
C++. Урок 8. Динамический полиморфизм
C++. Урок 9. Классификация полиморфизма
C++. Урок 10. Обработка исключений

#cpp #programming

👉 @cpp_lib
👍6🔥1🥱1
Правила трех, пяти и нуля

В этой статье представлены правила трех, пяти и нуля, а также объясняется, какое из них следует использовать и когда.

Правило трех было придумано еще в 1991 году. Оно расширилось до правила пяти с семантикой перемещений в C++11, но даже оно затем было подчинено правилу нуля. Но что такое все эти правила? И должны ли мы им следовать?

#cpp #programming

👉 @cpp_lib
👍4
Решение задач C++

Массивы в C++
Двумерные массивы в C++ | Главная и побочная диагональ матрицы
Рекурсия C++
Двумерный массив C++. Элементы над главной и под главной диагональю.
Динамические массивы C++
Объектно-ориентированное программирование в C++ за 10 минут!

источник

#cpp #programming

👉 @cpp_lib
🔥8👍5
Пишем на С++ вектор, умеющий расширяться без копирования элементов

В языке С есть функции malloc, free и realloc. При использовании последней вы можете написать этакий расширяющийся массив из примитивных типов или структур (классов-то нет), который, можно надеяться, не будет копировать все данные при каждом расширении. В С++ есть встроенный класс vector, который представляет из себя расширяющийся массив, но он так не умеет: при каждом расширении вектора выделяется новый участок памяти и все элементы перемещаются на него (по возможности, с использованием move-семантики). Но ведь, если можно каждый раз не копировать все старые элементы на новое место, вектор должен работать быстрее? В этой статье я попробую написать вектор, который умеет расширяться без копирования элементов.

Сначала я покажу, что стандартный вектор не умеет расширяться без копирования/перемещения, потом обсужу придуманное решение, потом собственно приведу реализацию вектора, а в конце сравню производительность со стандартным вектором.

https://habr.com/ru/post/701784/

#cpp #programming

👉 @cpp_lib
👍6🥰1