Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Результаты опроса: Вы пользуетесь указателями в С++ ?
Да 20 90.91%
Нет 0 0%
Не знаю что это такое 2 9.09%
Голосовавшие: 22. Вы ещё не голосовали в этом опросе

 
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
1

[C++] Указатели весчь ?

26.12.2011, 12:19. Показов 2199. Ответов 22
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Хочу узнать + и - указателей и узнать у народа пользуетесь ли вы ими или нет
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.12.2011, 12:19
Ответы с готовыми решениями:

Указатели и указатели на указатели, а также типы данных
Недавно начал изучать Си, перешел с Delphi. Много непонятного и пока процесс идет медленно....

Через указатели на указатели посчитать сумму двух чисел и записать в третье
1. Через указатели на указатели посчитать сумму двух чисел и записать в третье. 2. Написать...

Почему Лафоре использует указатели на указатели, вместо обмена значениями указателей?
Доброго времени суток! Задался теоретическим вопросом. Читал пример из книги Лафоре...

Используя нетипизированные указатели и указатели на подпрограммы обобщить сортировку пузырьком
Смысл задания в том, что нужно отсортировать массив структур из 3х полей по сумме координат есть...

22
Полярный
476 / 448 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
26.12.2011, 12:24 2
А без них куда? Только heloworld'ы и писать? У указателей минусов нет - это возможность.
0
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
26.12.2011, 12:26  [ТС] 3
странно в колледже на паскале без них с матрицами работал )
0
86 / 81 / 28
Регистрация: 02.08.2011
Сообщений: 335
26.12.2011, 12:26 4
Посмотри все еще на первой странице тема "[C++]Ссылки и указатели?"
0
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
26.12.2011, 12:31  [ТС] 5
Я хотел вообще опрос провести) А сообщение пустым просто нельзя оставлять
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
26.12.2011, 12:43 6
Что значит "пользуетесь"/"не пользуетесь"? Указатели в любом случае используются на низком уровне, и дело тут не в C++. Другой вопрос, позволяет ли C++ использовать более высокоуровневые конструкции. Да, позволяет. Никто не заставляет тебя работать с теми же матрицами ипсользуя указатели напрямую.
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
26.12.2011, 12:46 7
TBIKC, указатель указателю - рознь. Нативными указателями для работы с динамической памятью, то есть new/delete в чистом виде, я не пользуюсь. Давно уже были придуманы специальные контейнеры и умные указатели. Без них уже, конечно, никуда. Опять же указателями для изменения значения объекта тоже не пользуюсь - есть ссылки.

Так что Ваш опрос несколько неточен, на мой взгляд.
Цитата Сообщение от TBIKC Посмотреть сообщение
на паскале
Ну-ну.
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
26.12.2011, 12:49 8
Цитата Сообщение от TBIKC Посмотреть сообщение
странно в колледже на паскале без них с матрицами работал )
Так на пасе массив - это массив, а на плюсах и сях массив - это указатель. Да и в задачах на матрицы в частности и на массивы вообще все они только в учебных задачах бывают известного при компиляции размера, в реальных задачах размеры всех, или части массивов становятся известны только при исполнении, что нельзя сделать без указателей.
0
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
26.12.2011, 12:54  [ТС] 9
fasked, не сердчайте ибо мой опрос \ вопрос - не корректен, ибо сижу я щас с раскрытой книгой и главой "Указатели и строки-указатели" Вспомнив что в php они deprecated )
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
26.12.2011, 12:55 10
Цитата Сообщение от fasked Посмотреть сообщение
TBIKC, указатель указателю - рознь. Нативными указателями для работы с динамической памятью, то есть new/delete в чистом виде, я не пользуюсь. Давно уже были придуманы специальные контейнеры и умные указатели.
Я не призываю вытягивать указатели на самый верх, я не верю только в возможность отказа в реальных задачах от указателей вообще, а при разработке нового контейнера придётся прописать указатель и заново его спрятать. Имеешь понятный готовый контейнер - пользуйся.
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
26.12.2011, 13:02 11
fasked, Иногда и нативные нужны. Если есть некая сущность, которая содержится в классе и время от времени должна удалятся. Юзать смарты для этого - тоже самое, что юзать delete. Забыть написать .release() тоже можно.
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
26.12.2011, 13:06 12
Цитата Сообщение от ForEveR Посмотреть сообщение
Забыть написать .release() тоже можно.
Почему тоже? Не тоже, а в отличие от delete.
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
26.12.2011, 13:09 13
taras atavin, Т.е. delete по-твоему нельзя забыть написать? Не согласен в корне.
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
26.12.2011, 13:14 14
Декларируешь член-указатель - сразу пишешь деструктор с делитом. Что можно умудриться забыть? А вот успокоительное в виде смарта может такую забывчивость спровоцировать.
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
26.12.2011, 13:22 15
taras atavin, Дабы ты знал. Смарт при вызове деструктора удалится сам. Я же говорил про совершенно другую ситуацию.
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
26.12.2011, 13:27 16
То, что забывчивость по выходу за видимость статического контейнера не страшна, я и так понимаю. Ну так потому и можно забыть. Или имелось ввиду забыть в ресайзе? Опять таки успокоительное элементарно спровоцирует и эту забывчивость, а в случае явного (на данном уровне) указателя реализуешь ресайз - продумываешь его алгоритм до деталей и до делита додумаешься, помнить, а значит и забывать попросту нечего.
0
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
26.12.2011, 13:39 17
Я пользуюсь указателями потому что другие пользуются, я беру например исходник в инете, а там указатели. Получается что я ими тоже пользуюсь.
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
26.12.2011, 14:14 18
Цитата Сообщение от ForEveR Посмотреть сообщение
fasked, Иногда и нативные нужны. Если есть некая сущность, которая содержится в классе и время от времени должна удалятся. Юзать смарты для этого - тоже самое, что юзать delete. Забыть написать .release() тоже можно.
Тоже верно. Все зависит от специфики задачи, конечно. Но даже в таком случае, использование нативных указателей надо минимизировать.
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
26.12.2011, 14:41 19
taras atavin, Кто сказал что имелось ввиду о контейнерах? Пример.
Есть некая сущность - скажем xml-документ. Делается он по формату openoffice. В документе 30 колонок и n-ое кол-во строк. При большом документе - память сжирается непозволительно быстро и в больших колличествах. Вариант - создавать xml-документ, использовать его на каждый ряд, переводить в строку, записывать в строку, хранящуюся в классе, очищать. Кроме как через указатели - это не сделать (методов типа destroy и т.д. нету, реализовывать смысла нет). Вот тут разницы нету использовать нативные указатели или же смарт. Потому как при очистке и новом создании в любом случае придется проводить некие телодвижения.

Добавлено через 18 секунд
fasked, Согласен.
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
26.12.2011, 14:44 20
Кто сказал, что контейнер - это только коряги? Объект-документ - тоже контейнер (видимо таблиц, рисунков и абзацев). И строка - контейнер символов. И буфер может быть любого типа, в том числе, контейнерного.
0
26.12.2011, 14:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.12.2011, 14:44
Помогаю со студенческими работами здесь

Есть три переменные. Используя указатели на указатели, поменять значение максимальной и минимальной переменной
Мой код. #include <iostream> #include <stdlib.h> #include<iomanip> using namespace std; ...

Указатели на указатели с числами. Почему можно присвоить число в 4-ый элемент, если массив из 2 элементов?
Есть массив int **mas; mas=new int*; // выделил место под пять строк, верно ? mas=new int;//...

Зачем нужны все эти указатели (или не указатели)
Зачем надо DWORD, HANDLE, LPVOID?

Указатели на указатели: для чего они могут понадобятся?
Изучаю C++, дошёл до указателей на указатели. Там пишут что эта тема не обязательна. Для чего они...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru