Точка или стрелка?, Где какой символ ставить? |
Здравствуйте, гость ( Вход | Регистрация )
Точка или стрелка?, Где какой символ ставить? |
mishaga |
9.4.2009, 12:40
Сообщение
#1
|
Студент Группа: Новичок Сообщений: 14 Регистрация: 15.2.2009 Пользователь №: 552 Спасибо сказали: 0 раз(а) Репутация: 0 |
Хочу обратиться с функции-члену или переменной данного класса.
В каких случаях я должен делать это через точку, а в каких через стрелочку? myClass->myFunction(); или myClass.myFunction(); Прошу помидорами не закидывать, я в C++ пока совсем зелёный =) |
|
|
Litkevich Yuriy |
9.4.2009, 12:43
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
kwisp |
9.4.2009, 13:47
Сообщение
#3
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
mishaga,
Джеф Элджер "С++" Раскрывающийся текст Цитата Указатели и ссылки Попытки связать указатели с динамическими объектами часто приводят к недоразумениям. В сущности, они не имеют друг с другом ничего общего. Вы можете получить адрес стекового объекта и выполнить обратное преобразование, то есть разыменование (dereferencing) адреса динамического объекта. И на то, и на другое можно создать ссылку. { foo f; foo* p = &f; f.MemberFn(); // Использует сам объект p->MemberFn(); // Использует его адрес p = new foo; foo& r = *p; // Ссылка на объект r.MemberFn(); // То же, что и p->MemberFn() } Как видите, выбор оператора . или -> зависит от типа переменной и не имеет отношения к атрибутам самого объекта. Раз уж мы заговорили об этом, правильные названия этих операторов (. и ->) — селекторы членов класса (member selectors). Если вы назовете их «точкой» или «стрелкой» на семинаре с коктейлями, наступит гробовая тишина, все повернутся и презрительно посмотрят на вас, а в дальнем углу кто-нибудь выронит свой бокал. |
|
|
trdm |
9.4.2009, 18:28
Сообщение
#4
|
Дмитрий Трошин Группа: Участник Сообщений: 575 Регистрация: 12.1.2008 Пользователь №: 68 Спасибо сказали: 21 раз(а) Репутация: 6 |
мы помидоры приберегем до приезда Балмера
|
|
|
ViGOur |
9.4.2009, 19:51
Сообщение
#5
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
mishaga, если хочешь значть С++, то заучи от корки до корки страуструпа, там это все объясняется. Не прочитай, а именно заучи.
А те моменты который не понимаешь, можешь спрашивать у нас, объясним... |
|
|
kwisp |
9.4.2009, 22:30
Сообщение
#6
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
mishaga,
страуструп оч хорошо .. . однако после прочтения стоит заглянуть в стандарт чем раньше тем лучше только после прочтения. |
|
|
Novak |
10.4.2009, 19:34
Сообщение
#7
|
Активный участник Группа: Участник Сообщений: 319 Регистрация: 15.3.2008 Из: Замкадыш Пользователь №: 121 Спасибо сказали: 28 раз(а) Репутация: 6 |
А до Страуструпа, чтоб моск не сломать, Эккеля
|
|
|
mishaga |
11.4.2009, 9:01
Сообщение
#8
|
Студент Группа: Новичок Сообщений: 14 Регистрация: 15.2.2009 Пользователь №: 552 Спасибо сказали: 0 раз(а) Репутация: 0 |
Спасибо!
Всё теперь понятно. Книжки б теперь найти в бумаге! =) |
|
|
kwisp |
11.4.2009, 10:57
Сообщение
#9
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
|
|
|
Andrew Selivanov |
16.4.2009, 11:50
Сообщение
#10
|
Участник Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: 6 |
|
|
|
Текстовая версия | Сейчас: 28.12.2024, 9:21 |