|
1 / 1 / 0
Регистрация: 01.03.2011
Сообщений: 11
|
|
Ссылки и указатели01.03.2011, 12:10. Показов 18526. Ответов 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 | |
|
Указатели и ссылки? Ссылки, указатели Указатели и ссылки Ссылки и указатели Указатели и ссылки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки
Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
|
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы
Всем привет! Хочу поделиться свежим (и довольно. . .
|
|
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
|
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения:
- добавлена многоязычность
- добавлено снятие скриншотов
- добавлено поддержание бафов хождения по воде (для жреца, дк и шамана)
- и так, по. . .
|
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу)))
Критические ошибки, мешающие компиляции и. . .
|
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата)
Этот документ предназначен для того, чтобы новый чат Claude мог продолжить
работу без необходимости заново разбираться в. . .
|