Итераторы в C++ — удобный способ работы с контейнерами
#новичкам
Итератор — это объект, который позволяет перемещаться по элементам контейнера. Он похож на указатель, но работает с контейнерами стандартной библиотеки, такими как
Рассмотрим итераторы на примере
Далее можно обойти все элементы с помощью итератора
А теперь упростим запись, используя
🔥 Такой способ удобнее, особенно для простых случаев. Однако итераторы остаются мощным инструментом, позволяя работать со сложными структурами данных.
📣 C++ Ready | #практика
#новичкам
Итератор — это объект, который позволяет перемещаться по элементам контейнера. Он похож на указатель, но работает с контейнерами стандартной библиотеки, такими как
vector, map, set или list.Рассмотрим итераторы на примере
std::vector<int>, для начала создадим и присвоим значение:std::vector<int> numbers = {1, 2, 3, 4, 5};Далее можно обойти все элементы с помощью итератора
it. Здесь begin() возвращает итератор на первый элемент, а end() — на элемент за последним:for (auto it = numbers.begin(); it != numbers.end(); ++it) {
std::cout << *it << " ";
}А теперь упростим запись, используя
range-based for. Первым аргументом мы должны обозначить тип элемента массива, чаще всего используют auto, далее записываем название элемента на каждом цикла и через : пишем название самой структуры:for (auto num : numbers) {
std::cout << num << " ";
}🔥 Такой способ удобнее, особенно для простых случаев. Однако итераторы остаются мощным инструментом, позволяя работать со сложными структурами данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥6
Cтруктурированный, относительно полный, и достаточно глубокий материал по стандарту языка C++, состоящий из набора коротких видео, рассчитанных на людей уже знающих язык. В этих видео автор, в меру своего разумения, пытается освещать тонкие и дискуссионные вопросы С++Ссылочка на плейлист: YouTube🖤
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥6👎1
•
std::async — выполняет функции в отдельных потоках, управляя ими автоматически. Результат выполнения возвращается через std::future, что упрощает работу с асинхронными задачами.•
std::variant — позволяет хранить значения разных типов в одной переменной, гарантируя, что в каждый момент времени используется только один тип. Это исключает ошибки приведения и делает код более надежным.🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25👍4
constexpr — это спецификатор, обозначающий, что выражение, переменная или функция могут быть вычислены на этапе компиляции, если их аргументы являются константными, что способствует оптимизации и повышению производительности кода.Основные моменты:
• constexpr функции — вычисление значений на этапе компиляции
• constexpr переменные — создание неизменяемых констант
• Применение для определения размеров массивов и оптимизации программ
🔥 — если узнал новое
🤝 — если уже использовал
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25🤝8👍6❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Уже были сайты на разные темы, теперь пришло время быстренько изучить Git
learngitbranching — небольшая браузерная игра, которая поможет вам изучить Git. В ней вы познакомитесь на практике с основными командами, которые пригодятся вам в повседневной работе.
📌 Ссылочка: learngitbranching.js
📣 C++ Ready | #ресурс
learngitbranching — небольшая браузерная игра, которая поможет вам изучить Git. В ней вы познакомитесь на практике с основными командами, которые пригодятся вам в повседневной работе.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍5👎1
👍15🔥6👎2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11👎1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍7
Лямбда-выражение — это функция, которую можно определить непосредственно в коде. Она позволяет создавать компактные и выразительные конструкции, избегая необходимости объявления отдельной функции.Основное моменты:
• Универсальные лямбды — обобщение функций с auto-параметрами
• Захват move-only объектов — безопасное перемещение уникальных ресурсов
• Mutable-лямбды — изменение копий переменных без влияния на внешний контекст
🔥 — если узнал новое
🤝 — если уже использовал
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24🤝9👍1