求助关于全局对象和局部对象的成员初始化问题
#include <iostream>
#include <stdlib.h>
using namespace std;
class A
{
public:
A()
{
cout << "A构造" << endl;
}
virtual ~A()
{
cout << "A析构" << endl;
}
};
class B : public A
{
public:
B()
{
cout << "B构造" << endl;
}
~B()
{
cout << "B析构" << endl;
}
};
class C : public B
{
public:
C()
{
cout << "C构造" << endl;
cout << t << sizeof(t) << endl;
}
~C()
{
cout << "C析构" << endl;
}
char t[20];
};
C c;
A* b = new C();
void a()
{
C e;
}
int main()
{
a();
strcpy(new char[20], "v");
system("pause");
}
为什么全局的对象成员t[20]正确初始化了,而new的对象和函数a()里面的对象乱码?