Russian Qt Forum
Ноябрь 23, 2024, 18:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: MinGW - экспорт классов  (Прочитано 4407 раз)
Caduceus
Гость
« : Январь 12, 2012, 14:39 »

Как экспортировать класс с нормальными именами, пот типу как в MSVC перед классом пишется export?
Записан
popper
Гость
« Ответ #1 : Январь 12, 2012, 23:15 »

extern "C"?
Записан
Akon
Гость
« Ответ #2 : Январь 13, 2012, 15:34 »

А зачем это нужно?
Смотрите ключи компиляции c выражением типа *mange*. extern "С" - это C-экспорт - так сказать общий знаменатель для связи программных компонентов, собранных разными компиляторами.
Записан
Caduceus
Гость
« Ответ #3 : Январь 13, 2012, 17:00 »

Пишу DLL. Из неё надо экспортировать класс. Завязки на Qt нету - чистый C++

Например
Код:
class  MyCls
{
public:
   int              getInt() const;
   const char* getString() const;
}

И использовать этот класс из DLL в программе. Вот как его экспортировать из DLL по аналогии с  __declspec(dllexport) в MSVC
Записан
twp
Гость
« Ответ #4 : Январь 13, 2012, 19:30 »

в MinGW, как и в gcc не нужно никаких дополнительных манипуляций для экспорта класса
Записан
Tonal
Гость
« Ответ #5 : Январь 17, 2012, 08:30 »

Пишу DLL. Из неё надо экспортировать класс. Завязки на Qt нету - чистый C++
...
И использовать этот класс из DLL в программе. Вот как его экспортировать из DLL по аналогии с  __declspec(dllexport) в MSVC
Ежели твоя DLL-ка будет использоваться в программе собранной тем же компилятором, то __declspec(dllexport) перед именем класса - как и в MSVC, и в багланде.
Если хочешь использовать в программе собранной другим компилятором - то не делай так. Там очень много граблей. Одними именами не отделаешся. Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.049 секунд. Запросов: 20.