Step 2 (S-7023)

From Stepik Wiki
Jump to: navigation, search

Step on Stepik: https://stepik.org/lesson/541/step/2

Step 2 (S-7023) 1.png

[00:00 - 00:15] механизм который очень широко используется в c + + однако указатель есть множество недостатков поэтому кроме указателей все хорошо были видны ссылки ссылки очень похож на указатель о своей сути


[00:15 - 00:34] но прощение для того чтобы понять зачем они ссылке давайте обсудим какие недостатки есть указатель во 1 использование указателей синтаксический загрязняют в школе вам приходится часто используют операторы разыменование и оператор


[00:34 - 00:51] кроме того использование указателей внутри алгоритмов сильно затрудняет понимание этих как вы видели прошлым кроме указателей назначения что в принципе достаточно простой


[00:51 - 01:08] то есть стоит указатель на указатель то есть сущность у которых есть 2 уровня косность также бывают показательно указатели на указатели и тогда соответственно если вы используете


[01:08 - 01:23] несколько не косность это сильно затрудняет понимание алгоритма который описан кроме этого у кати есть проблема с ним с резервом есть


[01:23 - 01:41] если сравнивать переменную типа указатель и заботе проанализировать то там будет какой то адрес тот адрес который соответствует значению в байтах на стейки то есть как повезет и в некоторых случаях это может работает нормально то есть вы обратитесь в памяти которая принадлежит нашей программе


[01:41 - 01:58] а в некоторых случаях то есть использование не интерьером указателей ведет к неопределенному или скажем витя поэтому всегда отстой интерпретировать указателя всегда стоит их если бы сразу же не знаете какое значение кто присвоить


[01:58 - 02:15] следующая проблема заключается в том что даже в корректном коде а не резервный указатель то некорректно то есть обращение к неформальным это ошибка но даже скорее такой это могут быть проблемы связаны с тем что


[02:15 - 02:30] указатели существует нулевое значение так корректное значение для указатель но если вы обратитесь к нашему каратели то произойдет ошибка поэтому а в чем ваша функция которая понимает указатели вам нужно всегда проверять


[02:30 - 02:47] а теперь не передали вам 0 место соответственно это также то есть везде нужно проверять указатели на равен 0 ибо явно в описании функции указывает что так нельзя образовать 1 его указатель


[02:47 - 03:06] 4 проблема заключается в том что при использовании арифметики указателей очень просто промахнулся выйти за границы массива и с корректно в указателе сделать некорректно