Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Binarna kompatibilnost razlicitih verzija djeljene biblioteke i Pointer To Implementation

[es] :: C/C++ programiranje :: Binarna kompatibilnost razlicitih verzija djeljene biblioteke i Pointer To Implementation

[ Pregleda: 2130 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Sale_123
C++ Developer
Wien

Član broj: 23293
Poruke: 219
*.teol.net.



+120 Profil

icon Binarna kompatibilnost razlicitih verzija djeljene biblioteke i Pointer To Implementation14.09.2010. u 18:34 - pre 165 meseci
Recimo da pisem djeljenu biblioteku, u kojoj postoji jedna klasa, npr: Line
Code:

class LineImpl;

class __declspec(dllexport) Line {
public:
 Line();
 ~Line();
 double x1() const;
 double y1() const;

 double x2() const;
 double y2() const;

 void setLine(double x1, double y1, double x2, double y2);

private:

LineImpl * line;
};

i klasa u kojoj se vrsi implementacija:
Code:

class Line {
public:
 Line();
 ~Line();
 double x1() const;
 double y1() const;

 double x2() const;
 double y2() const;

 void setLine(double x1, double y1, double x2, double y2);

private:
double m_x1;
double m_y1;
double m_x2;
double m_y2;
};

Code:

#include "line.h"
#include "lineimpl.h"
Line::Line() 
{
 line = new LineImpl();
}

Line::~Line() 
{
 delete line;
}

double Line::x1() const
{
 return line->x1();
}
...

E sad poenta plmpl-a je da ako sad u klasu LineImpl dodam jos odredjene privatne variable, nije potrebno da se svi programi koji koriste tu biblioteku ponovo kompajliraju. Vjerujem da ste vec svi upoznati o cemu pricam.

Ono sto mene interesuje, sta se desava ako ja u klasu Line dodam odredjene funkcije koje opet pozivaju LineImpl.

1. Da li tada moraju da se ponovo kompajliraju programi koji koriste moju biblioteku?
2. Sta se desava ako promjenim redoslijed funkcija u klasi Line?

...
 
Odgovor na temu

[es] :: C/C++ programiranje :: Binarna kompatibilnost razlicitih verzija djeljene biblioteke i Pointer To Implementation

[ Pregleda: 2130 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.