C++多继承语法输出问题

求问C++继承问题
为什么输出的都是
Base1 m_A = -858993460
Base2 m_A = -858993460

#include
using namespace std;

//多继承语法

class Base1
{
public:
    Base1()
    {
        m_A = 100;
    }

    int m_A;
};

class Base2
{
public:
    Base2()
    {
        m_A = 200;
    }

    int m_A;
};

//子类  需要继承Base1和Base2
//语法: class 子类  : 继承方式 父类1 , 继承方式 父类2 ......
class Son :public Base1, public Base2
{
public:
    Son()
    {
        m_C = 300;
        m_D = 400;
    }
    int m_C;
    int m_D;
};

void test11()
{
    Son s;
    cout << "sizeof Son =" << sizeof(s) << endl;
    //当调用不同的父类中出现同名成员,需要加作用域区分
    cout << "Base1 m_A = " << s.Base1::m_A << endl;
    cout << "Base2 m_A = " << s.Base2::m_A << endl;

}

int main()
{
    test11();

    return 0;
}

你是啥开发环境啊,你这代码在VS2010上测试没问题

img