|
1 / 1 / 0
Регистрация: 01.03.2011
Сообщений: 11
|
|
Ссылки и указатели01.03.2011, 12:10. Показов 18580. Ответов 54
Метки нет (Все метки)
Добрый день.
Возможно было. В чем существенная разница между передачей данных в функцию по ссылке или указателю. В каких случаях вы бы что рекоммендовали. Заранее спасибо.
0
|
|
| 01.03.2011, 12:10 | |
|
Ответы с готовыми решениями:
54
Указатели и Ссылки
|
|
|
||
| 20.06.2011, 13:05 | ||
|
0
|
||
|
Android Programmer
141 / 142 / 10
Регистрация: 08.12.2010
Сообщений: 421
|
|||||||||||
| 15.07.2011, 01:57 | |||||||||||
|
окей, в продолжение темы, ещё немного магии, взываем функцию которая имеет принимаемые параметры, без параметров)
Но то были цветочки, пойдем дальше)
Создали указатель производного класса, привели базовый класс к классу наследнику. И что же мы видим? У нас есть методы класса наследника, только большой вопрос откуда? ведь конструктор то не отработал, и как бы по идеи методов не должно быть, а так у нас есть и методы и поля наследника. и можно с ними работать....
0
|
|||||||||||
|
71 / 76 / 9
Регистрация: 30.06.2011
Сообщений: 176
|
||
| 15.07.2011, 05:25 | ||
|
0
|
||
|
|
||||||||||||||||||
| 15.07.2011, 12:53 | ||||||||||||||||||
|
Там пояснял с другого угла зрения, но в данном случае должно быть то же самое Добавлено через 23 минуты silentnuke, касаемо твоего первого примера. В языке Си поддерживается "старый" стиль описания процедур (так называемый, традиционный стиль Кернигана-Ритчи). И там такое безобразие можно делать без всяких преобразований над указателями
Все три примера (один твой и два моих) принципиально друг от друга ничем не отличаются. В них имеет место быть передача одного количества параметров, в то время как ожидалось другое количество. Правда в твоём случае дополнительно ожидался параметр-указатель другого типа (this)
0
|
||||||||||||||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|||||||
| 15.07.2011, 15:23 | |||||||
|
То, что компилится эта строчка- целиком пусть будет на совести авторов компилятора.
0
|
|||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 15.07.2011, 17:03 | |
|
Потому, что p это void (*)();
а f имеет два аргумента
0
|
|
|
|
||
| 15.07.2011, 17:15 | ||
|
Собственно, почему весь мир уже несколько десятков лет пытается создать защищённые системы программирования: потому что из-за бесконтрольной работы над указателями у людей постоянно возникают всякие скрытые проблемы и ошибки
0
|
||
|
Android Programmer
141 / 142 / 10
Регистрация: 08.12.2010
Сообщений: 421
|
|
| 15.07.2011, 17:21 | |
|
Evg, с первым случаем то все понятно, привел для ознакомления.)
больше второй случай интересный. с функцией ну ещё допустим понятно, она я так думаю создается в памяти один раз, дальше уже кидается адрес, но черт возьми откуда то указатель появился, мы же не создавали объект дочернего класса.
0
|
|
|
|
||||||
| 15.07.2011, 17:28 | ||||||
|
silentnuke, вся иерархия классов - оно точно так же опускается до уровня языка Си. В твоём случае мы имеем что-то типа:
0
|
||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 15.07.2011, 17:46 | |
|
Evg, странно. Ты спрашиваешь что неверно с МОЕЙ Точки зрения. А опровергаешь её с точки зрения создателей компилятора.
...Так-то мне понятны причины, по которым это компилится. Понятны но неубедительны.
0
|
|
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 15.07.2011, 17:54 | |
|
Evg, ОК
Тогда я так спрошу: тебе непонятно недоумение человека, который считает, что не должно компилиться присваивание указателю на функцию, не принимающую аргументов, адреса функции, принимающей два аргумента?
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
||
| 15.07.2011, 18:00 | ||
|
0
|
||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 15.07.2011, 18:02 | |
|
0
|
|
|
|
||
| 15.07.2011, 18:03 | ||
|
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
||||||
| 15.07.2011, 18:04 | ||||||
|
kravam, мне компилятор в ответ на скармливание такого кода:
0
|
||||||
|
|
|||||||
| 15.07.2011, 18:08 | |||||||
0
|
|||||||
|
Android Programmer
141 / 142 / 10
Регистрация: 08.12.2010
Сообщений: 421
|
|
| 15.07.2011, 18:10 | |
|
Evg, спасибо, со вторым случае стало хоть более менее понятно.)
я так понял то что я привел класс A к наследнику тут вообще не причем, у нас поля стали доступны уже при создании указателя класса наследника.
0
|
|
|
|
||
| 15.07.2011, 18:12 | ||
|
0
|
||
| 15.07.2011, 18:12 | |
|
Указатели и ссылки? Ссылки, указатели Указатели и ссылки Ссылки и указатели Указатели и ссылки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Кто сможет объяснить тихое удаление авторских алгоритмов с Хабра без замечаний и объяснений?
Hrethgir 05.08.2026
Администрация Хабра причин удаления не объясняет. Может это кто сделает другой? Алгоритм эффективен и рабочий, ошибка было только в пагинации сообщений, что является отдельным алгоритмом а не. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов.
Логика кажется понятной:
1. Находим ключевые слова.
2. Добавляем их на. . .
|