Any troubles?
С++ стал изучать недавно. Но вот хоть убей не понимаю что такое указатели и для чего они нужны!! Может ли кто-нибудь подробно объяснить?
-
-
02.12.2005 в 03:46Простой пример: у тебя где-то там на диске С есть Ворд, а на десктопе - ярлычок, который хранит адрес Ворда. Хотя сам по себе тоже является файлом. Щёлнешь по нему - откроется Ворд. Вот так и указатель: это переменная, которая хранит адрес другой переменной, и предоставляет доступ к её содержимому. Эдакий ярлычок;о)
-
-
02.12.2005 в 23:48А вот для чего это надо можно в нескольких словах объяснить??
-
-
03.12.2005 в 00:03Это бывает нужно во многих случаях:
1. Если ты передаёшь функции большой объект и не хочешь тратить время на его копирование
2. Если ты хочешь внутри функции изменять содержимое переменных переданных в качестве аргумента
3. Если ты хочешь создать объект внутри функции и продолжить его использование после завершения функции (Внимание! Память под объект должна быть выделена динамически!)
4. Если размер массива заранее неизвестен и его предполагается выделять динамически
5. Если ты хочешь воспользоваться приёмами арифметики указателей - многие алгоритмы обработки массивов так выглядят значительно изящнее
6. Если предполагается использовать структуры данных - большинство из них невозможно реализовать без указателей
7. Если в программе сложная иерархия классов и ты не знаешь заранее к какому из дочерних классов будет принадлежать объект
А так же во многих других случаях.
На самом деле, указатели (и, заменившие их в некоторых современных языках, ссылки) - один из самых мощных инструментов программирования. Не разобравшись с ними стать программистом невозможно. Так что разбирайся;о)
-
-
03.12.2005 в 00:58Оно весьма спорное, однако оно существует
Караидель правильно говорит - без указателей нам как без рук. А ты - "зачем нужны", да ещё и с тремя восклицательными... Обидно даже
-
-
03.12.2005 в 01:05Очень спорное мнение. Знаю немало народу, кто понял указатели не с первого раза. Я сама сначала научилась ими пользоваться, потом поняла как они работают, потом выучила ассемблер и ещё раз поняла как работают указатели;о)
А насчёт дано - не дано, это скорее полиморфизм;о) Вот его действительно понимают далеко не все.
-
-
03.12.2005 в 11:32-
-
03.12.2005 в 12:06Другая по сравнению с чем? Указатели-то начинаются ещё в старом Си...
-
-
03.12.2005 в 13:01-
-
05.12.2005 в 01:00Даже в банальном php есть указатели
Караидель
-
-
05.12.2005 в 01:03В Бэйсике и Джаве нет указателей, только ссылки. А начинающие программеры воспринимают это как данность и далеко не сразу интересуются как это устроено.
-
-
05.12.2005 в 01:08-
-
05.12.2005 в 22:52-
-
09.12.2005 в 17:39