Bonjour,
j'ai une classe abstraite avec deux classes derivées et j'aimerais ne pas les fournir a un client.
Comment puis les transformer en DLL ou en librairie statique.
Version imprimable
Bonjour,
j'ai une classe abstraite avec deux classes derivées et j'aimerais ne pas les fournir a un client.
Comment puis les transformer en DLL ou en librairie statique.
En faisant une factory.
code client:
code compilé:Code:
1
2
3
4
5
6
7
8
9
10
11 // mylib.h class A { public: virtual ~A() {}; // important virtual void Coucou() = 0; }; A * MyFactory();
Je déplace vers le forum C++.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 // mylib.cpp #include "mylib.h" class B : public A { public: virtual void Coucou() {} }; class C : public A { public: virtual void Coucou() {} }; A * MyFactory() { if ( /* condition */ ) return new B; else return new C; }