单选题:以下程序段,哪个是不正确的?
以下程序段,哪个是不正确的? @[A](2)
A. `int main()
{
class A { int v; };
A a; a.v = 3; return 0;
}`
B. `int main()
{
class A { public:int v;A *p; };
A a; a.p=&a; return 0;
}`
C. `int main()
{
class A { public:int v; };
A *p=new A;
p->v=4; delete p;
return 0;
}`
D. `int main()
{
class A { public:int v; A *p; };
A a;
a.p=new A;
delete a.p;
return 0;
}`
A.`int main()
{
class A { int v; };
A a; a.v = 3; return 0;
}`
B.`int main()
{
class A { public:int v;A *p; };
A a; a.p=&a; return 0;
}`
C.`int main()
{
class A { public:int v; };
A *p=new A;
p->v=4; delete p;
return 0;
}`
D.`int main()
{
class A { public:int v; A *p; };
A a;
a.p=new A;
delete a.p;
return 0;
}`
答案:A
A. `int main()
{
class A { int v; };
A a; a.v = 3; return 0;
}`
B. `int main()
{
class A { public:int v;A *p; };
A a; a.p=&a; return 0;
}`
C. `int main()
{
class A { public:int v; };
A *p=new A;
p->v=4; delete p;
return 0;
}`
D. `int main()
{
class A { public:int v; A *p; };
A a;
a.p=new A;
delete a.p;
return 0;
}`
A.`int main()
{
class A { int v; };
A a; a.v = 3; return 0;
}`
B.`int main()
{
class A { public:int v;A *p; };
A a; a.p=&a; return 0;
}`
C.`int main()
{
class A { public:int v; };
A *p=new A;
p->v=4; delete p;
return 0;
}`
D.`int main()
{
class A { public:int v; A *p; };
A a;
a.p=new A;
delete a.p;
return 0;
}`
答案:A