LIST | STL C++ | Библиотека стандартных шаблонов (stl) | Уроки | C++ | #3

  Рет қаралды 106,022

#SimpleCode

#SimpleCode

6 жыл бұрын

Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)
Двусвязный список | Динамические структуры данных #2
qoo.by/41PL
vector | Библиотека стандартных шаблонов (stl) | Уроки | C++ | #1
qoo.by/41PO
✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅
Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут!=)
🔴🔴🔴 www.donationalerts.ru/r/simple...
или тут
🔴🔴🔴 / simplecode
✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅
Уроки по программированию
Наша группа ВК smplcode
Подписывайтесь на канал / @simplecodeit

Пікірлер: 115
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
*Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)*
@Lev_LK
@Lev_LK 6 жыл бұрын
#SimpleCode привет! Решил для себя изучить языки программирования, начал с с++. В дороге читаю Шилдта и SoloLearn(интересно узнать твое мнение про эту программу на андроиде), а вот дома практикуюсь по твоим видеоурокам - все доходчиво и понятно, спасибо за это!
@alexeygrigorev4317
@alexeygrigorev4317 6 жыл бұрын
Разница в использовании префиксного и постфиксного инкремента/декремента для итераторов в том, что в случае префиксного итератора, в теории, просто изменяется состояние объекта, и потом он возвращается, а при использовании постфиксного инкремента, состояние также изменяется, но возвращается объект с предыдущим состоянием, т.е. для этого компилятору необходимо создать ещё 1 объект. Это влияет на скорость работы. Но, вроде как современные компиляторы уже могут сами оптимизировать подобные случаи, и скорость работы не отличается. Но для себя я всё же сделал вывод, что если использование префиксного и постфиксного инкремента не влияет на правильность ответа, то предпочтительно использовать префиксный инкремент.
@stensej6841
@stensej6841 3 жыл бұрын
Примерно знал что именно так , Но этот ответ более адекватный и понятный нежели мой ! Спасибо !
@user-xi5bd3hv1d
@user-xi5bd3hv1d Жыл бұрын
честно говоря я сидел вахуе что такой элементарный момент спрашивается при том что был "урок" с материалом на тему перегрузки элементов
@alexeygrigorev4317
@alexeygrigorev4317 Жыл бұрын
@@user-xi5bd3hv1d честно говоря, я в ахуе, что 5 лет назад я мог высерать такие формулировки из своей ныне тупой головы
@user-md2zn1zj6b
@user-md2zn1zj6b 9 ай бұрын
@@user-xi5bd3hv1d он его спросил скорей всего чтобы люди которые забыли этот урок вспомнили его
@lovxxs
@lovxxs 8 ай бұрын
Крут, молодец
@user-ci2ku2oo5u
@user-ci2ku2oo5u 6 жыл бұрын
Если мы хотим только увеличить значение итератора, то получается, что префиксная форма предпочтительна. Поэтому, один из советов по микро-оптимизации программ писать «for (it = a.begin(); it != a.end; ++it)» вместо «for (it = a.begin(); it != a.end; it++)». В последнем случае происходит создание ненужного временного объекта, что снижает производительность. Скорость работы в Release версии: iterator++. Total time: 0.87779 ++iterator. Total time: 0.87753 А теперь ответим на вопрос, зачем же тогда стоит менять it++ на ++it. Замерим скорость работы Debug версии: iterator++. Total time: 83.2849 ++iterator. Total time: 27.1557
@andrewbistroff7558
@andrewbistroff7558 6 жыл бұрын
Спасибо Сергей за ваши труды!
@mishakalashov1496
@mishakalashov1496 6 жыл бұрын
Огромное спасибо!!!! Единственный канал где возможно выучить С++, пожалуйста не останавливайся))
@vladalu9794
@vladalu9794 6 жыл бұрын
Спасибо большое за отличный урок, и задание для самообучения!
@user-wl3bo7hp9v
@user-wl3bo7hp9v 4 жыл бұрын
Огромное спасибо за предоставленную информацию!
@andrewbistroff1199
@andrewbistroff1199 6 жыл бұрын
Спасибо Сергей за уроки!
@artlinestudio6735
@artlinestudio6735 2 жыл бұрын
Огромное спасибо Сергей! Отличный урок! Лайк! Просим продолжения по С++.
@Ermine882
@Ermine882 6 жыл бұрын
Спасибо за урок.
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
#liststl #SimpleCode #урокипрограммирования
@segars9604
@segars9604 5 ай бұрын
Спасибо за бесценный труд!)
@ustavshayabulochka
@ustavshayabulochka 4 жыл бұрын
Большое спасибо за ваши уроки! Вы помогли мне сдать программирование на 1 курсе)) Так понятно и доходчиво не всякий преподаватель объяснить сможет. Всего вам наилучшего, очень рада, что наткнулась на вас😀👍
@Matissed
@Matissed 3 жыл бұрын
А сейчас есть программирование ?
@Antonov_Ivan.
@Antonov_Ivan. 6 ай бұрын
Спасибо за урок!
@user-fb7do4nc6r
@user-fb7do4nc6r 10 ай бұрын
Контент в кайф давай ещё по больше такого, не останавливайся
@KurpatovInstagram
@KurpatovInstagram 6 жыл бұрын
спасибо!
@kerril1309b
@kerril1309b 4 жыл бұрын
Спасибо за качественный контент
@arthurr172
@arthurr172 7 ай бұрын
спасибо за урок)двигаемся дальше, сложно но это того стоит
@borisshabanov6702
@borisshabanov6702 6 жыл бұрын
Лайк однозначно!
@starshow4001
@starshow4001 6 жыл бұрын
спасибо крутые ролики.... ты топ
@one1axis
@one1axis 3 жыл бұрын
Спасибо за урок)
@sashatim8244
@sashatim8244 6 жыл бұрын
Спасибо!
@Ivan-Shyriaiev
@Ivan-Shyriaiev 4 жыл бұрын
Спасибо за урок
@miroslavklyukovsky683
@miroslavklyukovsky683 2 жыл бұрын
Спасибо!!!
@denned4192
@denned4192 4 жыл бұрын
Постфиксный инкремент обременен задачей сохранения и возврата старого значения итератора. Это требует времени и усилий, что, как правило, делает его медленнее.
@San-uf5hm
@San-uf5hm 3 жыл бұрын
Хочу добавить, что метод erase возвращает итератор на следующий элемент после удаляемого
@user-vs6kl8ph5v
@user-vs6kl8ph5v Жыл бұрын
572 это как мем с цифрой 6 и подписью "четыре"
@xikmatillosultonov8959
@xikmatillosultonov8959 4 жыл бұрын
Thank you !!!!!!!!!!!!!!!!!!!
@C2H5OHH
@C2H5OHH 2 жыл бұрын
У меня потребовалось использовать template , только так заработало, по другому никак!
@user-vl5oc8up1h
@user-vl5oc8up1h 6 жыл бұрын
дякую!
@Sashikx_zxc
@Sashikx_zxc 4 жыл бұрын
Спасибо
@oshskiyuzbek4800
@oshskiyuzbek4800 6 жыл бұрын
Krasava
@GagarinRobots
@GagarinRobots 5 жыл бұрын
спасибо
@catastrophic3709
@catastrophic3709 Ай бұрын
Постификсный оператор инкремента, возвращает значение с запозданием, которое будет лишь копией инкрементируемой сущности. Префиксный непосредственно возвращает инкрементируемую сущность
@firdavs5590
@firdavs5590 2 жыл бұрын
Спасибо вам я из 🇺🇿
@ivanrozb
@ivanrozb 3 жыл бұрын
Если использовать постфиксную модель записи, тогда создастся ненужный временный обьект. Поэтому лучше использовать префиксную форму
@vladalu9794
@vladalu9794 6 жыл бұрын
префиксный инкремент предподчтительней в работе с итераторами так как он изменяет объект и возвращает его, в случае с постфиксным инкрементом итератора - состояние объекта должно измениться, но создается лишний объект
@maksimtkachenko9617
@maksimtkachenko9617 6 жыл бұрын
Здравствуйте. Не могли бы вы немного рассказать о работе с Сом портами? Было бы очень интересно.
@viper_0097
@viper_0097 4 ай бұрын
Уже до этого видео интересовался таким вопросом, поэтому знаю ответ: префиксный инкремент сначала увеличит переменную на единицу, а потом вернет значение, а постфиксный вернет текущее значение переменной и прибавит единицу переменной. в цикле for разницы между ними никакой, потому что итератор не используются во время использования оператора
@bladegaming708
@bladegaming708 12 күн бұрын
В префиксной форме до использования переменной она меняется, а в постфиксной после
@kelvin7447
@kelvin7447 6 ай бұрын
Постфиксный итератор возвращает еще и предыдущее значение, в отличие от префиксного, из-за чего при дебаге уменьшается скорость работы.
@mr.4ilyman89
@mr.4ilyman89 5 ай бұрын
Разница постфиксого и префиксного инкремента в циклах в том, что когда постфиксный, то i будет итерироваться в конце тела цикла, а префиксного в том, что сначала i итерируется, а только потом происходит тело цикла
@user-it2ov1bx6m
@user-it2ov1bx6m 6 жыл бұрын
тебя вся моя школа смотрит!!!!!!!!!
@igorwilson1220
@igorwilson1220 4 жыл бұрын
@@user-kl4ih8bj5p +
@sargeus
@sargeus 2 жыл бұрын
Ещё интересны методы - splice и merge, но я думаю они не так часто используются, а видеоурок увеличился бы минут на 20
@user-mv6eo2rm6h
@user-mv6eo2rm6h Жыл бұрын
А зачем нужны эти методы?
@romanbondaruk9682
@romanbondaruk9682 2 жыл бұрын
разница в том, что в в префиксном итераторе итератор увеличеваеться и уже увеличенное значение возвращаеться. В случае постфиксновго итреатора значение увеличеваеться но возвращеться старое значение. Это сделано таки образом потому что так работают итератори для простих типов.
@user-hm9so3vx8g
@user-hm9so3vx8g Жыл бұрын
Разница между префиксным и постфиксным инкрементом заключается в том, когда происходит увеличение значения итератора. Префиксный инкремент выполняет операцию увеличения итератора и затем возвращает новое значение. Например, если у нас есть итератор i со значением 3, то префиксный инкремент ++i увеличит i до 4 и вернет 4. Постфиксный инкремент также выполняет операцию увеличения итератора, но возвращает его старое значение. Например, если у нас есть итератор i со значением 3, то постфиксный инкремент i++ вернет 3 и затем увеличит i до 4. В большинстве случаев разница между использованием префиксного и постфиксного инкремента не имеет большого значения. Однако есть некоторые ситуации, когда это может быть важно. Например, если мы используем итератор в цикле и хотим, чтобы его значение увеличивалось перед выполнением каждой итерации, то нам следует использовать префиксный инкремент. Если же нам нужно использовать значение итератора до его увеличения, то нам следует использовать постфиксный инкремент.
@f3ops381
@f3ops381 Жыл бұрын
ну так оно звучит, но почему тогда, используя префиксную инкрементацию, мы не пропускаем первый элемент коллекции? то есть мы получаем указатель на begin, дальше идет инкрементации и по идее в этой итерации мы были бы должны использовать уже следующий элемент.
@overdoses1794
@overdoses1794 6 жыл бұрын
Благодарю! Уважаемый, Сергей! Я так понимаю list и массивы это что не совсем связанное друг с другом(#include #include #include using namespace std; int main() { setlocale(LC_ALL, "ru"); int jq, temp; cout jq; int *arr = new int(); for (int i = 0; i < jq; i++) { arr[i]; cout
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
На сколько я помню, я много раз говорил, что лист это реализация двусвязного списка.
@overdoses1794
@overdoses1794 6 жыл бұрын
да, уже посмотрел урок, просто пока что работаю с javascript и уже слегка начал забывать си(
@chaos6828
@chaos6828 4 жыл бұрын
23:00 assign
@avengeranubis
@avengeranubis Жыл бұрын
9:31 Да-да, это определённо точно закономерно и очевидно число пятьсот семьдесят два)
@user-pr3ey8xf9l
@user-pr3ey8xf9l 5 жыл бұрын
Здравствуйте! А как реализовать список из объектов класса?
@abverqas123
@abverqas123 2 жыл бұрын
Префиксный итератор изменяет состояние обьекта ,а постфиксный итератор состояние также изменяет, но возвращается объект с предыдущим состоянием и ему надо создавать новый обьект
@user-od1sy9uo2v
@user-od1sy9uo2v Жыл бұрын
постфиксный вначале создаёт копию переменной, псоле увеличивает её на единицу и только после выполнения всей инструкции происходит подмена оригинала копией.
@evgeniyomg9467
@evgeniyomg9467 Жыл бұрын
Префиксный итератор возвращает новое значение итератора, а постфиксный возвращает исходное значение итератора.🎉
@sofyabelitskaya250
@sofyabelitskaya250 4 жыл бұрын
Подскажите, пожалуйста, как в функции print, без использования auto, инициализировать константный итератор. list::const_iterator i=list.cbegin() Что здесь не так?
@olgmichurinskiy4678
@olgmichurinskiy4678 4 жыл бұрын
list::const_iterator i=list.cbegin(), если актуально)
@mrslavyn889
@mrslavyn889 6 жыл бұрын
ура я восьмой
@gosteface9541
@gosteface9541 3 ай бұрын
Считается ли то, что я нашел информацию на тему разницы постфиксного и префиксного инкремента путем того, что просто посмотрел следующее видео (Так то информацию я нашел)
@dailyquote840
@dailyquote840 8 ай бұрын
i = 0 cout
@greatskydrake9531
@greatskydrake9531 3 жыл бұрын
Спасибо, разрешите вопрос: если я заполняю list объектами произвольного класса, или даже просто строковыми значениями String, то как будет работать myList.sort() ? Как сортировка поймет что больше, а что меньше ?
@user-vg1sr9ye5s
@user-vg1sr9ye5s 2 жыл бұрын
@@yashmerino А с классами? В данный момент мучаюсь, внутри листа лежат структуры, и не возможно получить доступ к внутреннему элементу такой структуры. Нужны сортировки по разным полям.
@user-vg1sr9ye5s
@user-vg1sr9ye5s 2 жыл бұрын
@@yashmerino В общем оказывается ее нужно было взять в скобки. Меня смутило что cout без скобок выводит содержимое, думал можно к указателю прямо обращаться.
@Retyioaqe
@Retyioaqe 5 жыл бұрын
for (const auto& i : myList) cout
@user-kh1ut5ow4x
@user-kh1ut5ow4x 3 жыл бұрын
Обновите ссылку в описании на двусвязный список, выдает 404
@kinofilm6634
@kinofilm6634 Жыл бұрын
9:30 572?! 😄😄😄
@vesh95
@vesh95 5 жыл бұрын
ахахах, 6:40 в голове прозвучал комментарий с текстом: "Ты тупой?" :D
@elmarbashirov4685
@elmarbashirov4685 Жыл бұрын
572 убило💀
@faku7378
@faku7378 14 күн бұрын
Число 572)
@artemherich8203
@artemherich8203 2 жыл бұрын
при префиксном не происходит создание временного объекта
@memorylearn8566
@memorylearn8566 4 жыл бұрын
+
@timurortskhanov8527
@timurortskhanov8527 6 жыл бұрын
Спасибо за урок. У меня какая то не понятная проблема. У меня class list не подключается и программа не распознает не List не ее объект. Сам написал класс как мы это делали все работает когда вот так List myList; Но когда присваиваю значение как массиву List myList = { 54, 17, 3 }; уже не работает. Кто может помочь почему #include не помогает? Спасибо.
@timurortskhanov8527
@timurortskhanov8527 6 жыл бұрын
Короче я разобрался. Я допустил ошибку. Слово list написал с большой буквой List. Но сейчас все работает.
@aram.nett1
@aram.nett1 6 жыл бұрын
После 24:50 не понял.... Как бы..мы взяли первый элемент второго листа, и последный элемент первого, тоисть 19 и 99... И оно должно было показывать 99 по 19 штук....не?
@user-rm3eu6we8c
@user-rm3eu6we8c 5 жыл бұрын
там перегруженная функция,
@user-qj6tk5fw9p
@user-qj6tk5fw9p 2 жыл бұрын
всем привет. может кто подскажет, если в list не реализован итератор свободного доступа, как мы перенаправляем наш итератор с помошью инкремента (it++), и почему тогда если мы можем перенаправить с помошью инкремента, то не работает запись (it+=1; или it=it+1), ведь по сути эти записи (it+=1; или it=it+1) равносильны записи (it++). ??
@sleepyNovember_project
@sleepyNovember_project 4 ай бұрын
Потому что так
@maksim_sashcheka
@maksim_sashcheka 4 жыл бұрын
Не пойму почему они не могли перегрузить оператор [ ] . Столько разных методов , даже блин перевернуть коллекцию можно, а элементарного оператора [ ] нет ...
@user-dn6wn4pz5q
@user-dn6wn4pz5q 6 жыл бұрын
а почему у меня не работает auto? Версия С++ 17
@denys.martyniuk
@denys.martyniuk 3 жыл бұрын
а как работать с пользовательскими типами данных? как вывести их например
@tabar_1312
@tabar_1312 3 жыл бұрын
для класса можно перегрузить оператор
@denys.martyniuk
@denys.martyniuk 3 жыл бұрын
@@tabar_1312 вопрос уже не актуален, но спасибо
@mrslavyn889
@mrslavyn889 6 жыл бұрын
прошо обьесните что делать если ты скачал виртуал студио 2017 как ты рассказывал в видео и оно не грузится причом у меня 8 виндовс
@mrslavyn889
@mrslavyn889 6 жыл бұрын
спасибо за совет но можно совет по моей проблеме
@redmakhnovets9213
@redmakhnovets9213 6 жыл бұрын
поставь галочку std 8.1.0
@mrslavyn889
@mrslavyn889 6 жыл бұрын
большое спасибо за подсказку
@nonameypog
@nonameypog 4 жыл бұрын
Самый нормальный способ: ++i++
@yankfire3294
@yankfire3294 4 жыл бұрын
Разница в том что префикс ный инкремент выводит только следующие число а поствексный выводит следующее но и выводит прошлое число
@TheWladberlin
@TheWladberlin 4 жыл бұрын
А если второй раз revese ?
@sleepyNovember_project
@sleepyNovember_project 4 ай бұрын
Норм
@pavelkinaev5245
@pavelkinaev5245 3 жыл бұрын
Двусвязный список | Динамические структуры данных #2 - ссылка не работает
@denyssalvatore9518
@denyssalvatore9518 4 жыл бұрын
++i - если так, то мы как бы изначально указываем на уже первый элемент в списке итератору.
@nMnFunny
@nMnFunny 4 жыл бұрын
кто смотрит видосы Simple code на скорости x3 ?
@user-vz1oi3ew2c
@user-vz1oi3ew2c 4 жыл бұрын
почему нєзя отак: auto o = a.end(); cout
@denyssalvatore9518
@denyssalvatore9518 4 жыл бұрын
потому что метод end() указывает как бы на несуществующий элемент, а как ты получишь доступ к тому, чего не существует.
@user-yw7ml8jy9i
@user-yw7ml8jy9i 2 жыл бұрын
Я не докапываюсь, но просто написано 979, а вы читаете 572🤔😊😥
@vitusink6445
@vitusink6445 4 жыл бұрын
Вы говорите что "мы изучили итераторы" Но это только следующий урок. Сами посмотрите на свой же плейлист
@Kokurorokuko
@Kokurorokuko 4 жыл бұрын
это какой-то баг в ютубе, ролик с итераторами вышел раньше
@pavelios3577
@pavelios3577 5 жыл бұрын
Спасибо за урок.
@oylalive467
@oylalive467 3 жыл бұрын
Спасибо!
@user-kb6qd8rg4g
@user-kb6qd8rg4g 4 жыл бұрын
спасибо
@user-yw7ml8jy9i
@user-yw7ml8jy9i 2 жыл бұрын
Я не докапываюсь, но просто написано 979, а вы читаете 572🤔😊😥
@user-hb7er4ff9u
@user-hb7er4ff9u 2 жыл бұрын
спасибо
@DD0S2
@DD0S2 3 жыл бұрын
спасибо
Me: Don't cross there's cars coming
00:16
LOL
Рет қаралды 13 МЛН
Heartwarming: Stranger Saves Puppy from Hot Car #shorts
00:22
Fabiosa Best Lifehacks
Рет қаралды 19 МЛН
Василиса наняла личного массажиста 😂 #shorts
00:22
Денис Кукояка
Рет қаралды 10 МЛН
Зачем нужны указатели в C++?
8:14
Dima
Рет қаралды 2,5 М.
STL std::list | Modern Cpp Series Ep. 118
33:48
Mike Shah
Рет қаралды 3,8 М.
Изучение C# в одном видео уроке за час!
1:06:08
Гоша Дударь
Рет қаралды 865 М.
Всё об указателях в C++ за 20 минут
20:00
КАК ЧИТАТЬ И ПОНИМАТЬ С/C++ КОД?
8:21
Winderton
Рет қаралды 185 М.
Me: Don't cross there's cars coming
00:16
LOL
Рет қаралды 13 МЛН