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

Как экспортировать интерфейс из dll - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Настройка debugger'a в codeblocks http://www.cyberforum.ru/cpp-beginners/thread1237682.html
Когда я ставлю брекпоинт и нажимаю на кнопку "debug" компилятор не останавливается на брекпоинте, а просто выполняет программу. Подскажите, что не так?
C++ Перегрузка оператора + не получается в своем классе перегрузить оператор + :( пишет "error C2804: бинарный "operator +" имеет слишком много параметров", действительно задал 2 параметра, но как еще то? ведь + и подразумевает собой сложение 2х значений... http://www.cyberforum.ru/cpp-beginners/thread1237651.html
C++ Как грамотно подключать заголовочные файлы?
Как грамотно подключать заголовочные файлы? Можно ли их все собрать в stdafx.h а потом инклюдить там где они мне нужны? А то сейчас получается, в одном .h объявил переменную с типом класса который описан в другом .h и посыпались ошибки.
C++ Алгоритм добавления элемента в сортированный список
Нужно придумать алгоритм для добавления элемента в сортированный список(STL list<char>), то есть этот алгоритм должен сравнивать введенный элемент с уже имеющимися элементами в списке и встать в нужное место. Я думал организовать алгоритм с помощью бинарного поиска, но возникает вопрос, как определить итератор на центр списка.
C++ Получение данных из файла http://www.cyberforum.ru/cpp-beginners/thread1237639.html
Задача№6. Постройте программу, которая отслеживает пожертвования в Общество Защиты Влиятельных Лиц. Она должна запрашивать у пользователя количество меценатов, а затем приглашать вводить их имена и суммы пожертвований от каждого. Информация должна сохраняться в динамически выделяемом массиве структур. Каждая структура должна иметь два члена: символьный массив (или объект string) для хранения...
C++ Обход графа в ширину - Breadth First Search (BFS) Всем привет! Я не понимаю алгоритм обхода в глубину BFS:( Кто может помощь? подробнее

Показать сообщение отдельно
Убежденный
Системный программист
 Аватар для Убежденный
14202 / 6217 / 986
Регистрация: 02.05.2013
Сообщений: 10,365
Завершенные тесты: 1
02.08.2014, 23:37     Как экспортировать интерфейс из dll
Dobbermann, здесь не помешало бы добавить для
GetMyInterface и FreeMyInterface соглашение о вызовах -
stdcall или cdecl, чтобы они всегда оставались одинаковыми, и
для клиента, и для библиотеки, независимо от настроек компилятора.

Далее.
delete в данном примере работает не так, как Вы думаете.
Строго говоря, по стандарту удалять класс через указатель на
базу, когда она не имеет виртуального деструктора - это
неопределенное поведение (UB).

И еще.
Почему нельзя вместо HRESULT и каких-то корявых плясок с двойной
косвенностью указателей сразу вернуть клиенту <I_MyInterface *>,
либо NULL в случае ошибки ?

А за код вида
C++
1
if(!*pInterface)
надо карать, причем лучше как-нибудь изощренно, чтобы осталась
зарубка: лаконично - не значит интуитивно понятно.

Ну и напоследок я бы посоветовал почитать про устройство COM
(Component Object Model) и поизучать на низком уровне, как там
сделан экспорт интерфейсов, переносимым образом между практически
любыми компиляторами и средами. Может, глядишь, и отпала бы нужда
городить свой велосипед, тем более такой, извиняюсь, корявый...
 
Текущее время: 20:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru