Bonjour tout le monde,
j'ai cherché pa mal de temps mais sans succès et voici mon problème :
J'ai une classe A et un memmbre statique a de type A par exemple, et donc voici l'interface :
maintenant je souhaite mettre mettre a.cpp et a.h dans une bibliothèque dynamique. Sous linux : no souci tout marche niken et on peu utiliser le singleton A::a sans souci et le projet utilisant ce dernier compile et link sans problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 a.h : class A{ public: A(); static A a; } a.cpp : A::A{} A A::a;
Vient maintenant le moment de porter le programme sous windows, et là, ... c'est le dramme.
Sans parler des macros dllexport à mettre partout, j'ai un gros souci :
voilà le code adapté sous windows :
on peut donc utiliser la classe A mais pas l'objet static A::a !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 a.h : class __declspec( dllimport ) A{ public: A(); static A a; } a.cpp : A::A{} A A::a;
car il me met lien externe non résolu en me parlant de A::a :-(
si quelcun a une idée, ça me rendrais bien service,
merci d'avance.
Partager