Bonjour,

sous Windows 7-64, avec Visual studio le code (ci dessous extrait d'une librairie) se compile, sous MingW gcc
j'ai l'erreur :

In file included from C:\test\juce\modules\juce_audio_devices\juce_audio_devices.cpp:171:0:
C:\test\juce\modules\juce_audio_devices\native/juce_win32_WASAPI.cpp:100:19: error: 'UUIDGetter' is not a class template
template<> struct UUIDGetter <name> { static CLSID get() { return uuidFromString (guid); } }; \
le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
#if JUCE_MINGW
#define JUCE_COMCLASS(name, guid) \
struct name; \
template<> struct UUIDGetter <name>  { static CLSID get() { return uuidFromString (guid); } }; \
struct name
struct PROPERTYKEY
{
GUID fmtid;
DWORD pid;
};
WINOLEAPI PropVariantClear (PROPVARIANT*);
#else 
 #define JUCE_COMCLASS(name, guid)       struct __declspec (uuid (guid)) name
#endif
Débutant en C++, je ne comprends pas trés bien la définition du template avec le define.