Форум программистов, компьютерный форум CyberForum.ru

CREATEFUNCPTR - C++

Восстановить пароль Регистрация
 
lordimid
 Аватар для lordimid
3 / 3 / 0
Регистрация: 02.10.2011
Сообщений: 93
16.10.2013, 18:02     CREATEFUNCPTR #1
Помогите пожалуйста разобраться. Что означает следующая строка
C++
1
2
3
...
typedef IUnknown* (*CREATEFUNCPTR)(); 
...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Убежденный
Системный программист
 Аватар для Убежденный
14183 / 6198 / 984
Регистрация: 02.05.2013
Сообщений: 10,324
Завершенные тесты: 1
16.10.2013, 18:10     CREATEFUNCPTR #2
Здесь объявляется указатель на функцию CREATEFUNCPTR.
Функция, на которую он может указывать, должна возвращать указатель на IUnknown и
принимать пустой список аргументов.
lordimid
 Аватар для lordimid
3 / 3 / 0
Регистрация: 02.10.2011
Сообщений: 93
17.10.2013, 17:39  [ТС]     CREATEFUNCPTR #3
Хм... А как тогда можно понять дальнейший код? Это же вроде приведение к типу:
C++
1
2
3
4
typedef IUnknown* (*CREATEFUNCPTR)() ;
...
CREATEFUNCPTR CreateInstance=(CREATEFUNCPTR)::GetProcAddress(hComponent, "CreateInstance") ;
...
Не понятно то, что начинается после знака равно.
Убежденный
Системный программист
 Аватар для Убежденный
14183 / 6198 / 984
Регистрация: 02.05.2013
Сообщений: 10,324
Завершенные тесты: 1
17.10.2013, 17:57     CREATEFUNCPTR #4
GetProcAddress возвращает FARPROC, а здесь нужен CREATEFUNCPTR.
Если не выполнить приведение типов, будет ошибка компиляции.
Yandex
Объявления
17.10.2013, 17:57     CREATEFUNCPTR
Ответ Создать тему
Опции темы

Текущее время: 05:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru