2010-06-30 4 views

ответ

5

Предположительно так специальный классификатор, такие как __declspec(dllexport), может быть добавлен к таким классам, изменяя (или условно определение) Определить:

#define _OgreSampleClassExport __declspec(dllexport) 
2

Это позволить для будущего экспорта. Ogre может только строго быть статически связаны библиотеки на данный момент, но если авторы когда-либо решить, поддерживать динамически связанные библиотеки (он же совместно используемых библиотек на некоторых платформах), им нужно будет написать код:

class 
#ifdef EXPORTING 
    __declspec(dllexport) 
#else 
    __declspec(dllimport) 
#endif 
Sample_Character [...] 

. .. и это только для MSVC. Обычно им приходилось прилагать усилия, чтобы сделать это с помощью Sample_Character и всех других классов, которые они предоставляют через свою библиотеку. Создание отдельного макроса, которое будет определено позже, намного проще, поскольку это нужно сделать только в одном месте.

Смежные вопросы