Czy zmiana kolejności publicznych nie-wirtualnych nieliniowych przeciążonych metod w klasie autonomicznej powoduje złamanie ABI?Czy zmienia kolejność publicznych metod innych niż wirtualne w samodzielnym zerwaniu klasy ABI?
Przed:
class MyFinalClass
{
public:
// ...
void doSomething(char c, int i, int n);
void doSomething(char c, int i);
// ...
};
Po:
class MyFinalClass
{
public:
// ...
void doSomething(char c, int i);
void doSomething(char c, int i, int n);
// ...
};
Dzięki!
Teoretycznie odpowiedź zależy od tego, z której platformy/biblioteki narzędziowej korzystasz - C++ nie określa żadnego konkretnego ABI. – Flexo
Dla takich jak ja, którzy nie wiedzieli, co oznacza ABI: http://en.wikipedia.org/wiki/Application_binary_interface Teraz robisz! – Stormenet