经典指数          
原因
1287
浏览数
0
收藏数
 

请指出下列代表有几处错误。
#include<stdio.h>
class A
{
    public:
      virtual void f(){}
    public :
       A()
       {
           f();
        }
};
class B1:public A()
{
    private:
        char *_s;
    public:
        B1()
        {
            _s=new char[1024];
        }
    private:
        void f()
        {
            delete _s[];
            _s=NULL;
        }
}
class B2:public A
{
    private:
    int * _m;
    public:
        B2()
        {
            _m=new int(2016);
        }
    private:
        virtual void f()
        {
            delete _m;
            _m=NULL;
        }
}
int main()
{
    A*a1=new B();
    A*a2=new C;
    delete a1;
    delete a2;
    return 0;
}
  • 3
  • 4
  • 5
  • 6

     举报   纠错  
 
切换
暂时还没有答案,欢迎分享你的解答 . . .
撰写答案
扫描后移动端查看本题