Цикл foreach C++ | range-based циклы | Изучение С++ для начинающих. Урок

  Рет қаралды 57,469

#SimpleCode

#SimpleCode

Күн бұрын

Пікірлер: 120
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
*Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)*
@bradleynelson7877
@bradleynelson7877 3 жыл бұрын
A trick : you can watch series at flixzone. Me and my gf have been using it for watching loads of movies recently.
@hezekiahskyler9105
@hezekiahskyler9105 3 жыл бұрын
@Bradley Nelson definitely, been watching on flixzone for years myself :)
@korbinjericho9564
@korbinjericho9564 3 жыл бұрын
@Bradley Nelson definitely, been using Flixzone for years myself :D
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
#циклforeach #SimpleCode #урокипрограммирования
@ЕвгенийМартюхин
@ЕвгенийМартюхин 6 жыл бұрын
@@АндрейБородин-ы1д for (int var :arr) { cout
@paruyrmeliqyan
@paruyrmeliqyan 4 жыл бұрын
@@ЕвгенийМартюхин Здравствуйте, спасибо.
@Asa-bw9mw
@Asa-bw9mw 3 жыл бұрын
@@ИванЧернышенко-т7ш суть отвечать ему который оставил этот комментарии 2 года назад , угораю ежже
@xackspel
@xackspel 6 жыл бұрын
Полезное видео. Просмотрел также всю рекламу, прошелся по рекламным ссылкам...ну и конечно же лайк и комент). Спасибо. Все на наивысшем уровне. Если хотите #изучитьC++ вы попали по адресу!
@KurpatovInstagram
@KurpatovInstagram 6 жыл бұрын
Спасибо!
@ВасилийАлибабаевич-и4ф
@ВасилийАлибабаевич-и4ф 6 жыл бұрын
Спасибо огромнейшее за еще один подробный и замечательный урок. Но хотелось бы еще присоединится к вопросу о QT. Cтоит изучать или смотреть в сторону WPF ( там нужен уже C#?). Какая из GIU перспективна в плане дальнейшего изучения, если хочется создавать декстопные приложения? Просто без практики изучение в какой-то момент притупляется, когда не видишь куда в реальности можно применить полученные знания. С точки зрения вовлеченности в обучение было бы неплохо начать какой-то практический проект, и на его основе попробовать показать как можно применять полученные знания. постепенно увеличивая сложность. Но это меня уже занесло.
@Wardriving666
@Wardriving666 3 жыл бұрын
Up-аю, и дико плюсую!
@ДаниилРекин
@ДаниилРекин Жыл бұрын
Так что вы решили? Сейчас тем-же вопросом задаюсь. Буду очень благодарен если напишите что вы решили и что у вас получилось в итоге
@ДанилАхметшин-и4ц
@ДанилАхметшин-и4ц Жыл бұрын
​@@ДаниилРекин используй Qt
@xghsvxdhiwbss
@xghsvxdhiwbss Жыл бұрын
@@ДанилАхметшин-и4ц привет, тоже сейчас решаю по чём учить qt, может посоветуй какие-нибудь хорошие видеоуроки
@ДанилАхметшин-и4ц
@ДанилАхметшин-и4ц Жыл бұрын
@@xghsvxdhiwbss там документация по qt хорошая
@Kleolit
@Kleolit Жыл бұрын
Вот рабочая запись int arr[] = { 45, 364, 17, 53, 790, 52 }; for (int var : arr) { cout
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
а в видео типа не рабочая ...
@pilipzero1149
@pilipzero1149 4 ай бұрын
​@@sleepyNovember_project нет
@sleepyNovember_project
@sleepyNovember_project 4 ай бұрын
@@pilipzero1149 видео надо смотреть, а не метаться туда сюда, посмотри вот тут > 10:10 < и расскажи что здесь демонстрируется
@segars9604
@segars9604 Жыл бұрын
Спасибо за бесценный труд!)
@АлександрБугримов-о1е
@АлександрБугримов-о1е 6 жыл бұрын
Вообще супер видео. Таких каналов не много на просторах. Спасибо большое!!!
@avengeranubis
@avengeranubis 2 жыл бұрын
Сейчас for each уже не работает, можно использовать for (var : array){ ... }
@ctpaxru7067
@ctpaxru7067 2 жыл бұрын
Спасибо!
@avengeranubis
@avengeranubis 2 жыл бұрын
@@ctpaxru7067 Всегда пожалуйста!
@Tochilis1
@Tochilis1 Жыл бұрын
спасибо, чувак
@avengeranubis
@avengeranubis Жыл бұрын
@@Tochilis1 Всегда пожалуйста!
@АлександрДобров-ы3к
@АлександрДобров-ы3к Жыл бұрын
жалко никто не обновляет старые уроки
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
Ура, распаковка for each, сладкий видик, Сергей имбовый
@overdoses1794
@overdoses1794 6 жыл бұрын
Осталось на практике закрепить. спасибо за урок!
@vladalu9794
@vladalu9794 6 жыл бұрын
спасибо большое тебе за отличный урок, как всегда на высшем уровне!!!
@АлексейОрлов-щ4ж
@АлексейОрлов-щ4ж 6 жыл бұрын
Очень классные уроки, Огромное спасибо!
@Ermine882
@Ermine882 6 жыл бұрын
Спасибо за урок!
@kerril1309b
@kerril1309b 5 жыл бұрын
Спасибо за качественный контент
@ВадимЖуравлёв-п6о
@ВадимЖуравлёв-п6о 6 жыл бұрын
спасибо тебе с меня лайк а с тебя видосики!)))
@std4042
@std4042 6 жыл бұрын
Спасибо.)
@ShoutingVase
@ShoutingVase 2 жыл бұрын
Спасибо вам
@Versie2007
@Versie2007 6 жыл бұрын
Хорошо бы сделать видео про инициализацию переменных в конструкторе через двоеточие. Тема тянет для темы для новичков, используется синтаксис сплошь и рядом. Плюс в курсе уже упоминался вызов конструктора базового класса через двоеточие.
@drdoom6063
@drdoom6063 6 жыл бұрын
Привет Cергей , как нибудь в ответах на вопросы скажешь пожалуйста стоит ли изучать Qt Спасибо за уроки :)
@DevilAlex03
@DevilAlex03 5 жыл бұрын
Судя по вакансиям C++ программиста в Москве и Питере, то знание Qt в требованиях или рекомендациях встречается часто, то скорее всего стоит
@pavelios3577
@pavelios3577 6 жыл бұрын
Спасибо Сергей за интересный урок!
@aln9391
@aln9391 6 жыл бұрын
Лучший курс из известных мне.
@artlinestudio6735
@artlinestudio6735 3 жыл бұрын
Отличный урок Сергей. Спасибо! Лайк! Просим продолжения уроков по С++. Умоляем!
@ifelru
@ifelru 3 жыл бұрын
Базово для C# было понятно, посмотрел здесь потому что в уроках на C# нету урока о foreach! Спасибо!
@alexandrkryvopust7505
@alexandrkryvopust7505 2 жыл бұрын
Странно что автор об этом не упоминает. В VS 2019 точно, наверное и в более ранних версиях есть помощник для автоматического написания "каноничного" range-based цикла. Пишете слово for и из выпадающего списка выбираете rfor. Это быстрее и удобнее.
@f3ops381
@f3ops381 Жыл бұрын
Действительно странно, всего-то прошло 5 лет
@alexandrkryvopust7505
@alexandrkryvopust7505 Жыл бұрын
@@f3ops381 VS 2019 релизнулась в 2019 году, нет? И это внезапно 4 года назад.
@АдамПрокопович
@АдамПрокопович 3 жыл бұрын
for each не работает вообще. пишет требуется скобка скобка и точка с запятой. и под конец выдает ошибку что нельзя использовать устаревшую команду
@avengeranubis
@avengeranubis 2 жыл бұрын
for (var : array) { ... } можно использовать, т.к. это вроде то же самое
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
Также будет ругаться и на некоторые функции, для которых есть _s апдейты, но всё же можно использовать и старые, без _s MSDN: >Many old CRT functions have newer, more secure versions. If a secure function exists, the older, less secure version is marked as deprecated. The new version has the _s ("secure") suffix. >There are several ways to eliminate deprecation warnings for the older, less secure functions. The simplest is simply to define _CRT_SECURE_NO_WARNINGS
@libertariancom
@libertariancom 2 жыл бұрын
Супер
@danik8550
@danik8550 Жыл бұрын
Сейчас for each уже так не отработает, нужно использовать for (auto var : arr)
@ДанилАхметшин-и4ц
@ДанилАхметшин-и4ц Жыл бұрын
?
@ДанилАхметшин-и4ц
@ДанилАхметшин-и4ц Жыл бұрын
Но он же так показал на 11 минуте
@МарияАксенова-н1г
@МарияАксенова-н1г 3 жыл бұрын
лучший
@mykhailomorhal2181
@mykhailomorhal2181 6 жыл бұрын
Спасибо) нужная информация
@ТамирланБельгибаев
@ТамирланБельгибаев 6 жыл бұрын
спасибо
@СарматПересветов
@СарматПересветов 3 жыл бұрын
все круто и понятно, большое спасибо
@RUSlTUZ
@RUSlTUZ 6 жыл бұрын
Я правильно понимаю, что не рекомендуется использовать "range-based" и тем более "for earch", если заведомо известна длина массива? Где-то читал, что данные структуры требуют больше вычислительной мощности. Понятно что это мелочи, особенно с современными компьютерами, но все же? Аналогично и с auto, если требуется перебор только одного типа данных, например int и об этом заведомо известно, то не нужно использовать auto, т.к. компилятор лишний раз будет думать, какой тип данных нужен.
@Евгений-ф9я3о
@Евгений-ф9я3о 6 жыл бұрын
В советское время Вас бы назначили НарКомом просвещения)) Спасибо
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
Небольшая заметка с MSDN для « for ( for-range-declaration : expression) { statement } » range-based цикл for прерывается когда один из следующих операторов выполняется в statement секции: break, return, или goto, объявленный переходящим за пределы «statement» цикла. Объявление continue в range-based цикле for, прерывает только текущую итерацию (и начинает следующую) Помните данные факты о range-based цикле for: •Автоматически распознаёт массивы •Распознаёт контейнеры, которые имеют .begin() и .end() •Использует begin() и end() аргумето-зависимый поиск для чего-либо ещё
@samsungalibek
@samsungalibek 6 жыл бұрын
krasavchik
@Armkeyter
@Armkeyter 5 жыл бұрын
У меня на visual 2019 работает только так for(auto var : arr){}
@Youtube-pomoyka
@Youtube-pomoyka 4 жыл бұрын
Огромное спасибо, а то я в ступоре сижу и не понимаю в чём проблема.
@Youtube-pomoyka
@Youtube-pomoyka 4 жыл бұрын
Чёрт, оказывается автор рассказал про такой способ.
@Armkeyter
@Armkeyter 4 жыл бұрын
@@KZbin-pomoyka да, я сначала сам сделал а потом увидел, что он рассказывал 😅
@Orange_999
@Orange_999 2 ай бұрын
Привет брат! Ты ещё не сдался ситхам? ​@@KZbin-pomoyka
@Youtube-pomoyka
@Youtube-pomoyka 2 ай бұрын
@Orange_999 о, я уже и забыл про этот челлендж! Пока ещё нет, рано ещё.
@СарматПересветов
@СарматПересветов 3 жыл бұрын
давно хотел в благодарность Вам за донатить, но не зарестрирован ни на патреон, ни на донатионалертс, случайно по номеру телефона или карты вам перевести деньги нельзя? Или всеже обязательно придется регистрироваться по вышим сссылкам?
@pavelios3577
@pavelios3577 6 жыл бұрын
Спасибо за видео Сергей, но почему-то for each ( --- ) не работает, кто знает, подскажите, пожалуйста. Заменил на ranged-for (int var in arr), тоже не пошло, опять подчёркивание.
@ЕвгенийМартюхин
@ЕвгенийМартюхин 6 жыл бұрын
for (int var :arr) { cout
@vitaliizadorozhnyi8101
@vitaliizadorozhnyi8101 5 жыл бұрын
@@ЕвгенийМартюхин Спасибо. Но почему именно for each не робит?
@dbite907
@dbite907 3 жыл бұрын
@@vitaliizadorozhnyi8101 зависит от компилятора, mvs(Microsoft Visual Studio) не очень хороший компилятор для с++, он больше для с# подойдет, а для с++ сейчас многие используют MinGW(g++, gcc) которые принимают нормальный синтаксис с/с++
@bibleiski
@bibleiski 3 ай бұрын
for each инструкция всё-таки часть STL и лучше бы такие вещи в курсе разделять от чистого C++
@gagikmelkumyan7328
@gagikmelkumyan7328 4 жыл бұрын
For each работает с динамическими структурами каторие мы сами создавали(mylist)???
@普京的手机
@普京的手机 4 ай бұрын
Здравствуйте. Вопрос. Как работает итерирование по обычному массиву, если у него нет .begin() и .end() И, кстати, почему у vector нету .sort() и .unique()?
@sleepyNovember_project
@sleepyNovember_project 4 ай бұрын
Ну что за вопрос? В видео и так самый обычный массив без .begin() и .end()
@普京的手机
@普京的手机 4 ай бұрын
@@sleepyNovember_project так в этом и вопрос. У него нет этих методов, а range-based цикл работает для него.
@sleepyNovember_project
@sleepyNovember_project 4 ай бұрын
@@普京的手机 я не знаю как оно конкретно здесь работает, но Сергей вроде бы немного об этом рассказывал в одном из видео данного курса. Массив статический, на него кстати работает и sizeof(), то есть можно узнать размер статического массива по формуле int ARR_SIZE = sizeof(arr) / sizeof(arr[0]); Раз мы сами можем узнать размер массива, который в теории от нас по какой-то причине скрыт, то и foreach как-то это делает, возможно по своему. Вот не помню, работает ли он с обычными динамическими массивами, и если да, то тут мои полномочия всё, окончены, хз
@普京的手机
@普京的手机 4 ай бұрын
@@sleepyNovember_project понятно, как это работает с вектором и тд, но как компьютер понимает количество элементов в массиве - непонятно. Наверное, к массиву есть доп. информация, ведь как-то sizeof для них должен работать за O(1), тем более ячейки массива от случайных ячеек памяти не отличить.
@GottyMintly
@GottyMintly 3 жыл бұрын
int var in arr, стихи на языке c++)
@mszZZZ
@mszZZZ 6 жыл бұрын
Можно это сделать с помощью auto. Так даже проще получится.
@pubgr862
@pubgr862 5 жыл бұрын
Получается если с этим циклом работать со своим классом для него требуется реализовать конструктор копирования если не по ссылке работать
@tupoy_ytub_uberi_psevdonim
@tupoy_ytub_uberi_psevdonim Жыл бұрын
показанная в первой половине видео форма цикла не допустима к использованию в студии 2022
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
индус съел for each
@liudasliudelis9666
@liudasliudelis9666 6 жыл бұрын
Dėkui
@ide9827
@ide9827 Жыл бұрын
комментарий для продвижения видео
@Диана-ъ2х2х
@Диана-ъ2х2х 3 жыл бұрын
Привет Сергей , такой срочный вопрос при ииспользовании for range-based у меня вылезает ошибка 'begin' was not declared in this scope и тоже самое с 'end' , пишу на qt . С чем это может бытьь связано?
@BlackBaron2622
@BlackBaron2622 6 жыл бұрын
сколько ни читал книги по С++ а о форейче только щас слышу.. Хотя я задавался вопросом, есть ли он в С++, потому как в Си шарпе есть и его там сразу дают с другими циклами.
@ecode2878
@ecode2878 4 жыл бұрын
нет на плейлист урок 138...
@mszZZZ
@mszZZZ 6 жыл бұрын
Вы неправильно итератор написали, Вы написали list:iterator, а надо list::iterator
@slimbdeful
@slimbdeful 6 жыл бұрын
Отличный материал! Спасибо за урок. Есть вопрос. Допустим, мы пишем функцию, которая возвращает указатель, скажем, на char. Внутри этой функции указатель как-то меняется. То есть меняется адрес, на который он указывает. Затем, при возврате значения, указатель теряется из области видимости и доспуп к данным по нему уже ошибка. Так как же реализован возврат указателя в стандартных функциях?
@ImmortalBest
@ImmortalBest 6 жыл бұрын
А когда с# ?
@aln9391
@aln9391 6 жыл бұрын
Вопрос. На сколько можно быть уверенным, что элементы переберутся по порядку, когда это возможно. Иногда это важно.
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
Они всегда перебираются по порядку.
@MrMikhailDJ
@MrMikhailDJ 4 жыл бұрын
А что делать если я вот работаю с вектором, делаю for(auto &x: myVector) далее в цикле int sq = x * x Потом делаю цикл для вывода вектора через .at и он выводит массив не возведённый в квадрат. В чём проблема? Я же передавал по ссылке переменную.
@svvonline1
@svvonline1 2 жыл бұрын
Ну Вы же не меняете результат операции в переменную по ссылке , а заносите в переменную sq. Надо x = x*x; ну или x = pow(x,2); Тогда, в результате получите вектор квадратов.
@sleepyNovember_project
@sleepyNovember_project 11 ай бұрын
@@svvonline1 pow? Лол)
@memorylearn8566
@memorylearn8566 4 жыл бұрын
+
@timurortskhanov8527
@timurortskhanov8527 6 жыл бұрын
Спасибо за уроки. У меня снова не получается. Помогите пожалуйста. Вот код. #include #include #include using namespace std; /* * цикл for each * range-based циклы */ template void PrintList(const list &lst) { for(auto i=lst.cbegin();i!=lst.cend();++i) { cout
@dirakon8819
@dirakon8819 6 жыл бұрын
Да, вроде бы не работает уже for each, вместо той строчки надо написать "for(auto var:arr)".
@timurortskhanov8527
@timurortskhanov8527 6 жыл бұрын
Dirakon Спасибо. Точно. Я уже разобрался. :)
@higiro9333
@higiro9333 3 жыл бұрын
Лол, так это же пайтоновский for
@Анатолий-э6ъ2г
@Анатолий-э6ъ2г Жыл бұрын
12 челов которые поставили дизлайк такие типо:🚶🚶🚶
@ukrmill
@ukrmill 3 жыл бұрын
++ agon'
@fix02onf74
@fix02onf74 6 жыл бұрын
Слух конечно режет, не фо ричь а правильнее фо эйчь :)
@aoxt2
@aoxt2 6 жыл бұрын
Each произносится как "иич", а никак не эйч.
@miroslavklyukovsky683
@miroslavklyukovsky683 3 жыл бұрын
Спасибо!
@C2H5OHH
@C2H5OHH 3 жыл бұрын
Спасибо за урок!
@ЯрославГоловко-ф6и
@ЯрославГоловко-ф6и 4 жыл бұрын
спасибо
@Antonov_Ivan.
@Antonov_Ivan. Жыл бұрын
Спасибо за урок!
@Vlad_Ofitserov
@Vlad_Ofitserov Жыл бұрын
Спасибо 👍
@DD0S2
@DD0S2 3 жыл бұрын
спасибо
@timursyrma
@timursyrma 3 жыл бұрын
спасибо
@ВітяКоміссаров
@ВітяКоміссаров 2 жыл бұрын
спасибо
"Идеальное" преступление
0:39
Кик Брейнс
Рет қаралды 1,4 МЛН
Добро пожаловать в C++
16:08
Winderton
Рет қаралды 491 М.
Уроки C# - цикл foreach - Урок 18
18:19
XpucT
Рет қаралды 22 М.