Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2018, 12:07   #1
mxm.mxmv
 
Регистрация: 13.11.2017
Сообщений: 3
По умолчанию Вопрос про typedef

Приветствую.
Подскажите, пожалуйста, как понимать данный фрагмент кода:
typedef void(Number:: *Action)();

здесь весь код программы (строка 50 - конкретно мой вопрос)
http://cpp-reference.ru/patterns/beh...terns/memento/

Спасибо!
mxm.mxmv вне форума Ответить с цитированием
Старый 12.01.2018, 12:49   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

этот фрагмент означает, что заводится алиас под именем Action, который представляет из себя указатель на метод класса Number, который не имеет параметров и возвращает void.
как-то так:
typedef <результат метода>(<имя класса, "владельца" метода>::*<имя алиаса>)(<параметры метода>)
pu4koff вне форума Ответить с цитированием
Старый 12.01.2018, 13:58   #3
mxm.mxmv
 
Регистрация: 13.11.2017
Сообщений: 3
По умолчанию

просветления не наступило
Подскажите, пожалуйста, где можно почитать в литературе на эту тему? По тайпдефам информации много, но по конкретному примеру не нашел...

в той же программе, когда увидел (_receiver-> *_action)(); - подумал, что это вообще не с++
1.5 года учу его, а с таким примером кода не сталкивался

спасибо.
mxm.mxmv вне форума Ответить с цитированием
Старый 12.01.2018, 14:58   #4
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Ну, такой вот тупой синтаксис у плюсов.
В плюсах очень много нюансов, что этот язык всю жизнь учить нужно и то что-то где-то всплывёт.
(_receiver-> *_action)(); - это выполнение метода для объекта _receiver, на который указывает action.
указатели на методы - это вообще дикая дичь в плюсах.
Попробуйте тут почитать: http://rsdn.org/article/cpp/fastdelegate.xml
pu4koff вне форума Ответить с цитированием
Старый 12.01.2018, 15:21   #5
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Может, эти ссылки чем-то помогут
http://www.unixwiz.net/techtips/reading-cdecl.html
И откуда я туда попал в своё время
http://alenacpp.blogspot.ru/2007/10/...larations.html
Black Fregat вне форума Ответить с цитированием
Старый 12.01.2018, 16:05   #6
mxm.mxmv
 
Регистрация: 13.11.2017
Сообщений: 3
По умолчанию

Большое всем спасибо за ссылки! Ушел читать
mxm.mxmv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос про Qt whit3g Qt и кроссплатформенное программирование С/С++ 4 04.02.2015 21:59
Вопрос про Свойство Visible и про иконки в imagelist Kappi4 Компоненты Delphi 2 21.05.2010 13:10
Вопрос про C# BanzoO Общие вопросы C/C++ 1 02.07.2009 03:47
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
У меня вопрос про базы данных,а точнее про таблицы!!! Alexij Общие вопросы Delphi 1 13.04.2008 23:24