有如下程序: #inc1ude <iostream> using namespace std; c1ass Point{ public: static int number, public: Pointo {number++;} ~Point(

admin2017-06-18  31

问题 有如下程序:
#inc1ude <iostream>
using namespace std;
c1ass Point{
public:
  static int number,
public:
  Pointo {number++;}
  ~Point(){number——;)
  };
  int Point::number——0;
  void main0{
  Point *ptr;
  Point A, B;
  {
  Point* ptr_point  new Point[3];
  ptx=ptr_point,
  }
  Point C;
  Gout+Point::number+end1,
  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://kaotiyun.com/show/AhAp777K
0

最新回复(0)