Pull to refresh
-1
0
Олег Гончаров@cear

User

Send message

std::vector: от основ до тонкостей реализации

Level of difficultyMedium
Reading time22 min
Reach and readers9.4K

std::vector — это, пожалуй, самый используемый контейнер STL. Он кажется простым на первый взгляд: динамический массив с автоматическим управлением памятью. Но под капотом скрывается множество тонкостей, знание которых отличает начинающего программиста от профессионала.

В этой статье мы пройдем путь от базового использования до глубокого понимания внутреннего устройства std::vector, рассмотрим все его методы, особенности работы с памятью, исключения, трюки оптимизации и подводные камни. А также рассмотрим альтернативы std::vector и когда их стоит использовать.

Читать далее

Многопоточность в современном C++: Lock-Free программирование, Memory Ordering и Atomics

Level of difficultyMedium
Reading time8 min
Reach and readers11K

Многопоточное программирование в C++ традиционно ассоциируется с мьютексами, condition variables и потенциальными проблемами вроде deadlocks и race conditions. Однако современные стандарты C++ (начиная с C++11 и далее) предоставляют инструменты для написания высокопроизводительного многопоточного кода без классических блокировок. В этой статье рассмотрим продвинутые техники: lock-free программирование, атомарные операции и различные модели упорядочивания памяти.

Читать далее

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity

Specialization

Фулстек разработчик
Ведущий
C++
C
Разработка программного обеспечения
Qt
C++ stl
Алгоритмы и структуры данных
Объектно-ориентированное проектирование
Оптимизация кода
Многопоточность
Системное программирование