有如下程序: #include using namespace std; class Point{ public: static int number; public: Pointo{number++

admin2019-05-06  21

问题 有如下程序:
    #include
    using namespace std;
    class Point{
    public:
    static int number;
    public:
    Pointo{number++;}
    ~Point(){number--;}
    };
    int Point::number--0:
    void mainO{
    Point*ptr;
    PointA,B;
    {
    Point*ptr_point=new Point[3];
    ptx=ptr_point;
    }
    Point C:
    Gout+Point::number+endl;
    delete[]ptr;
    }
    运行时输出的结果是(    )。

选项 A、3
B、4
C、6
D、7

答案C

解析 此题是静态成员、对象的构造和对象的生存期等知识点的综合考查。此题定义了一个静态成员变量number,初始值为0。主函数中第2行定义了2个Point对象,此时number。变为2;随后new运算符又定义了一个包含3个Point对象元素的数组,其通过delete结束后number的值变为5;然后又定义了一个Point对象c,number变为6;最后输出number的内容。
转载请注明原文地址:https://jikaoti.com/ti/vMt0FFFM
0

最新回复(0)