Указатели c++ что это. Для чего нужны. Указатели c++ разыменование. C++ для начинающих. Урок #46
HTML-код
- Опубликовано: 13 июл 2017
- Понравилось видео или оказалось полезным? Подпишись!
Указатели c++ что это. Для чего нужны. Указатели c++ разыменование. C++ для начинающих. Урок #46
Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут! =)
www.donationalerts.ru/r/simple...
или тут
/ simplecode
Уроки по программированию
Наша группа ВК smplcode
Подписывайтесь на канал / @simplecodeit
*Друзья, если вы решили изучать программирование и подписались на канал - рекомендую вам нажать колокольчик чтобы никогда не пропускать новые уроки!*
Добрый день. Что означает запись вида "int* a =1" ? На что указывает указатель если он позади типа, а не перед переменной? Такой тип записи часто встречается в литературе, или это просто опечатки?
@@Abraham-ce2jt спасибо, я нашел ответ. Это ссылка на тип, устаревшая форма записи. Но в Qt C++ очень популярно (вообще такое ощущение, что Qt это какой-то другой C++), например там необходимы (именно необходимы) вот такие конструкции:
Хедер:
QPushButton* btn;
Реализация:
QGraphicsProxyWidget* wgt = scene->addWidget(btn);
@@greatskydrake9531 Это не ссылка на тип, а классический указатель, проинициаоизирванный значением. "int* a" и "int *a" - это одно и то же.
@@svvonline1 да уже неактуально, теперь бы в аллокаторы вьехать
Шёл 2024 а более годных уроков на ютубе нет. Спасибо за труд!
вот. Я благодаря ему выучил c++
@@QWERTY-lo2db тогда расскажи, пожалуйста, зачем это надо делать? Зачем надо лезть в адреса памяти, если это все равно, что играть в русскую рулетку, а результат такой же, как напрямую обращаться к переменной безопасным способом
@@ElChampi0 Никто не говорил что обязательно учить нужно, но знать стоит.
начало 2021 ситуация не поменялась...(P.S. спасибо Сергею за его труд!))
2021 уже )
Вот за такие уроки я готов платить деньги. А вы делаете это бесплатно!
Спасибо вам огромное. Уроки действительно крутые!
Большое преимущество в том, что они очень наглядные. Очень!
Пожалуйста! Удачи в обучении =)
В благодарность автору, можно вместо того, чтоб пропускать рекламу, смотреть её. Он, конечно, не много получит, но если хотя бы половина его зрителей будут смотреть эту рекламу, а не пропускать, это уже здорово бы помогло ему
я не вижу никакой рекламы при просмотре. может быть раньше была, но сейчас, видимо, автор ее отключил.
@@user-kn5nz8cg9t иногда в начале программы выскакивает
@@LenTos1337 не знал) Буду смотреть)
Блин, это в 100 раз лучше, чем лекции в универе. Всё чётко, быстро и наглядно. Всей группой пользуемся вашими уроками. Спасибо за труд!
+++, учусь в универе на программного инженера и не знаю что делал бы,если бы не этот канал
Простите, но это оху**ный мужик, идеально все объясняет и показывает, лайк с 3х акков!!!!
Что за индивидуумы ставят дизы? Уроки то бесплатны, и преподаватель классный:)
@Мой Властелин преподы))
дЫбилы, раз непоняли, то что мой 5-ти летний ребенок, уже понял
Те кто смотрел на скорости не x2
Дизы от тех, кто не понял указатели после просмотра)
От тех кто так и не услышал для чего они нужны и где применяются.
0:14 - Что такое указатели?
1:30 - Адрес переменной int a; в оперативной памяти
2:26 - Что произошло при int b = a;
3:05 - Что произошло при int *px =&a; //*px Указывает на адрес в памяти с переменной a.
4:29 - * - Указатель на адрес в памяти. &a В данном случае используется как оператор взятия адреса.
6:11 - Ошибка при присваивании разных типов данных
7:37 - Вывод указателя. px указывает на адрес в памяти переменной int a; // cout
@@brexit8044 че
Смотрел Дударя и тебя, могу сказать, что ты очень хорошо объяснил! Спасибо большое.
Дударь вообще ни о чем. Тут клюнул, там клюнул. Везде нахватался по чуть-чуть и никакой конкретики. А здесь человек дает исчерпывающие объяснения (ну для новичков по крайней мере). А не так , что вот я вам объяснил тему, но для чего надо не могу сказать, просто запомните и сами потом поймете, когда будете писать код.
@@user-jp4qb6br7k согласен
Дударь вливает гавно в головы людей.
В разы круче всех курсов, за которые просят денег. Вы лучший!
Очень всё доходчиво,спасибо. Хотелось бы маленькие примерчики в конце, где такая многосторонняя связь, указателей, могла бы пригодиться. А, то не понимаешь в чём фишка.
Вся суть указателей проявляется в работе с функциями: т. к. стандартным методом передачи переменных является передача по значению то если вы в функции хотите изменить значение оригинальной переменной у вас это не получится (при передаче по значению функции работают с копиями переменных). В таком случае вас могут спасти указатели: в функцию передается указатель на переменную и тогда уже функция сможет изменять значение оригинальной переменной.
Кроме того работа массивами в функциях возможна только через указатели: это сделано специально чтобы не копировать весь массив в функцию а работать напрямую с массивом через указатели. Иначе если копировать весь массив в функцию это будет жрать лишние ресурсы памяти и процессора.
@@igor06991 просто занимался уборкой и поставил видео в фоновом режиме. Специально не сидел и не смотрел
@@fillmalyshev9377 Спасибо большое!
@@fillmalyshev9377 а если указать адрес переменной без создания указателя?
@@Vov4ik048 Зачем если есть указатели
Сергей !! спасибо Вам огромное за уроки !!!!
Спасибо за урок.
Огромное спасибо за урок! Доступно, доходчиво и внятно!
Довольно сложная тема для меня - указатели, а Вы, Сергей, всё так понятно и просто объяснили. Спасибо Вам большое за такие интересные, понятные и подробные курсы. Всего Вам наилучшего
Отличное объяснение.Всё сразу стало понятно,без путаницы! Спасибо большое !!!
Спасибо огромное! Лучшие уроки С++
Большое тебе спасибо. Храни тебя Господь
Спасибо Вам большое за качественные уроки!
Спасибо, очень хорошо объясняешь. У тебя талант!
спасибо огромное за ваши уроки, я не знаю как бы я всё это учил без вас
Спасибо Сергей! За ваш труд.
Лучшие уроки по плюсам! 👍
Большое спасибо автору за работу! Поддержку автору!
Спасибо большое за уроки. Все понятно и доходчиво. Только очень хотелось бы пару простых примеров применения этого. Для закрепления материала и наглядности.
Потрясающе... Вот и все, других слов нет, параллельно прохожу курс на скиллбокс, данный канал просто офигенное дополнение! Не реклама! Отзыв от обычного трудяги)
Спасибо за урок!
Гений. Дай бог тебе здоровья!
очень полезная информация, спасибо
Сделай урок на тему указателей на узатели. Очень интересно.
Спасибо, всё понятно, помог разобраться
Огромная благодарность!!!!
Спасеба! Объяснил! От души!
Спасибо за объяснение темы указателей
Большое спасибо, очень познавательные и интересные уроки)
Пожалуйста!
Спасибо за информацию, очень интересно))
Побольше бы реальных примеров где это можно хорошо и удобно применять
Везде.
Чувак, ты лучший. Переезжаю сейчас с Java на C++, наткнулся на твой курс, качество материала лучше чем у некоторых курсов на udemy, да еще и бесплатно. Подписка однозначно.
Аналогичная ситуация) Видео классные у автора
Спасибо за знания
бро ты лучший, делаешь добро! Тебе в преподы надо идти)
тоже вот начал си изучать волею судьбы и тупил на старте, тут посмотрел и очень понятно, благодарю, лайк, подписка, колокольчик, коммент😁
Хочется больше практики. А так огромное спасибо)
Спасибо)
Отличное видео! Все понятно.
Из всех уроков что просмотрел, найбольший пробел у меня именно в указателях, адресах и ссылках, их разименовывании и когда и где именно их применять. Сейчас пересматриваю уже 3й или 4й раз, все никак запомнить не могу главное на 0:14 Спасибо за уроки!
Немного запутанно для полностью "нулевых" новичков.
*px - это содержимое ячейки памяти,
_pх - это адрес ячейки памяти ("указатель-pointer")_ , которому можно присваивать другой адрес переменной с помощью '&'.
В результате имеем низкий уровень доступа к адресам памяти и регистрам с содержимым, почти на уровне ассемблера (чего почти нет в других С- подобных яз.). *Но в общем эти С++ курсы, лучшие из всех и не только на рус. (и даже превосходят по максимально понятной подаче (для всех) многие С++ посредственные и объемные книжонки).*
Лучше бы сначала объяснил px, а потом *px, так более понятно.
И да знаю, что уже целый год прошел)
@@sgeinok5950 да пошел бы ты на три буковки дружок ;D
На рисунок смотреть тоже надо! Для кого рисовал учитель? Переменая это адрес в памяти и значение. Все понятно.
Благодарю, Спасибо 🙏
Спасибо огромное , наконец-то дошло что и как )
СПАСИБО !!!
Я в шоке. Поняла с полу слова все, что вы говорили, хотя тема звучит довольно запутанно. Замечательное объяснение. Спасибо.
* Самые понятные, видео уроки по c++, на всём (RU) youtube *
Спасибо
Спасибо за урок!!!!
спасибо))
#указатели #SimpleCode #урокипрограммирования
Спасибо за лекции.
Иногда правда кажется что на ассемблере проще)
Хорошо объясняешь спасибо
Уроки просто шикарные, автору респект, но вот ДЗ маловато что-то для такого их количества.
Я ВСЕ ПОНЯЛ!!!
СПАСИБО!!!!!
КРАСАВЧИК ЕЕЕЕЙ.
КАК АБЯСНЯЕТ ЛЯЯЯЯ КРАСАТА
ЕБАТЬ!ОТВЕЧАЮ!
Было бы интересно посмотреть как работают те или иные вещи в реальной работе программ
Спасибо! Доступно!)
Ахах, Антон, и ты тут)
Очень хорошие уроки, спасибо:
int **c = &b; // Указатель на указатель
cout
указатель на указатель, указатель на ссылку с этим проблемы. В записи int** c=&b. b - это указатель, на который указывает указатель с???
Вот так ЧИТЫ в играх и работают. Спасибо Сэнсей++!
Ты топ лучше уроков на Ютубе нет
Круто!
вот почему все на планете через жопу все объясняют, когда вот человек старается и все сразу понятно становится, продолжай в том же духе, все просто предельно понятно
иду дальше, цель - все уроки)
спасибо!
спасибо
Пожалуйста!
Топ уроков на ютубе
супер! спс. помогло ;)
кул стори бро только надо начинать с того зачем Страуструп так угорел и напихал их в ++ (примеры практической пользы)
супер))))))
Красиво
Полезность Paint'a определяется полезностью его пользователя 🙂 (Перефразировано)
вооо! Тема, в которой без поллитры не разобраться для меня было.
Если в компиляторе использовать только *px, то можно через него также менять переменную а:
a= 5
int *px = &a;
*px = 2
cout
Он это сделал для того, чтобы показать возможности указателей, что необязательно с одним работать
Ням-ням. Лайк
большое спасибо из 2022
вау, всё понятно
Меня интересует вот такой вопрос: в каких случаях требуется работа с указателями. Т.е. если можно менять значения напрямую в переменной a, зачем это делать через указатели.
Чисто от себя могу сказать, для создания структур данных, где заранее не известны размеры входящих элементов, или удобно работать с ссылками нежели чем с отдельными экземплярами классов.
Практический пример: выслали тз, необходимо распарсить файл, считать с него данные и создать структуру, которая представляет собой молекулу аспирина, т.е. уже можно увидеть, что будет класс атом, который хранит много информации, будет класс связь, которая хранит информацию о кратностях связей допустим и будет класс молекула в виде какой-то реализации графа, так вот с ссылками в этом графе молекулы работать удобнее, так как копировать каждый класс атом в каждую ячейку графа займёт долгое время. Надеюсь понятно написал.
Да и в целом при создании даже базовых структур данных, такие как динамические массивы, связанные списки, хэш-таблицы, бинарные деревья с указателями проще работать.
Но ещё больше я надеюсь, что вы уже сами разобрались с этим вопросом. Успехов в обучении!
Большое спасибо за уроки!) как работают указатели мне понятно, но не понятно, пока что, какой смысл работать с указателями если есть переменные )))
Под Финский хеви метал хардкодишь .В этом твой секрет успеха))
Спасибо вам за уроки. Всегда было интересно как же создаются сами языки программирования? Желаю вам удачи! И напоминаю совсем скоро "юбилей" нас будет 10 ТЫС.)
Я помню всё что обещал =)
Уже 57)
@@romanrotarmel1396 Еще 47
100 000 (-_-
@@user-ij7pz4yo1i 105 000
Очень хорошее объяснения, сколько пытался понять что такое указатели - никак не получалось. Везде слишком занудно и сухо объясняют. Спасибо!
спасибо было сложно, и пока еще непонятно зачем это
Видел бы ты конспекты мои по твоим урокам)))
👍
спасибо за ваш урок! не могли бы вы объяснить что такое паттерн синглтон? после просмотра многих видео в ютубе до сих пор не очень понятно
Пушка
Спсб
cout
я начинающий с++ник, но мне кажется тут проще было рассказать про тип данных "auto"
подскажи пожалуйста, что за классное музло фоном звучит? Уроки кстати супер!
когда нибудь я напишу программу, которая поставит лайк на каждое видео с этого плейлиста
14:16 для себя
Одна просьба автору можете сделать отдельное видео на такие выражения как : int* a , int& b ,что это такое никак не могу разобрать , такие вещи в основном встречаю в функциях как параметры
15:52
Спасибо за урок!!! Вопрос: а почему адрес переменной постоянно меняется? Имею ввиду 16 - й код переменной.
каждый раз запуская программу мы заново запрашиваем для неё память у операционки
Всё-таки сделайте pdf’ку. Многие готовы купить за search, за примеры. Оно стоит того.