Здравствуйте, Alxndr, Вы писали:
A>Конструктор базового виртуального класса должен вызываться из конструктора полного объекта (most derived класса)
N>>N>>class Base
N>>{
N>>public:
N>> Base( int n ) : m_n(n) {}
N>>private:
N>> int m_n;
N>>};
N>>class Derived : public virtual Base
N>>{
N>>public:
N>> Derived( int n ) : Base( n ) {}
N>>};
N>>class SubDerived : public Derived
N>>{
N>>public:
N>> SubDerived( int n, int m ) : Base( n ), Derived( n ) {}
N>>};
N>>
и желательно таки первым

-- компилятор конечно переордерит, но может и выругаться предупреждением если включены варнинги...