Приветствую, Erop, вы писали:
E> Совсем кроспслатформенно никак. Но если ты расскажешь подробности, то многое может оказаться возможным...

ок )
E> Например, если код, который экспортирует класс и код, который его импортирует, находятся на одной машине и работают под управлением одной и той же платформы,
Конечно.
E> то часто можно сделать абстрактный класс, содержащий, быть может только pure virtual методы и inline методы, без статических данных в них.
E> Главное -- никаких данных (полей) в интерфейсе!!!
E> Теперь в экспортирующем модуле заводим функцию, которая возвращает указатель на такой интерфейс. При этом из этого интерфейса выводим класс, в котором всё реализуем и указатель на такой класс мы и выдаём наружу...
class Exporting
{
public:
virtual int func() = 0;
virtual float other() = 0;
};
class My : public Exporting
{
public:
int funct() { return m_str.size(); }
float other() { return 4.4; }
private:
std::string m_str;
};
extern "C"
{
Exporting * getClass();
}
Exporting * getClass()
{
return new My();
}
Так?