Допустим ли этот код?:
class BaseClass
{
public:
BaseClass (int *p) : p_ (p) { }
private:
int *p_;
};
class SubClass : public BaseClass
{
public:
SubClass () : BaseClass (&i_), i_ (123) {}
private:
int i_;
};
Хорошо известно, что базовый класс создается перед членами подкласса, поэтому мне интересно.