填空题 使用VC6打开考生文件夹下的工程test33_1,此工程包含一个源程序文件test33_1.cpp,但该程序运行有问题,请改正程序中的错误,使该程序的输出结果为:
Number=1,2,3
sum=16
源程序文件test33_1.cpp清单如下;
#include <iostream.h>
class Num

public:
/***************** found *****************/
void Num(int a,int b, int c);
void PrintNumber();
void PrintSum();
private:
int x,y,z;
static int sum;
;
/***************** found *****************/
int sum=10;
Num::Num(int a,int b, int c)

x=a;
y=b;
z=c;
sum=sum+x+y+c;

void Num::PrintNumber()

cout<<"Number="<<x<<","<<y<<","<<z<<end1;

void Num::PrintSum()

cout<<"sum="<<sum<<end1;

void main( )

Num m(1,2,3),*n;
n=&m;
m. PrintNumber();
/***************** found *****************/
n. PrintSum();


  • 1、
【正确答案】 1、{{*HTML*}}
(1) 错误:void Num(int a,int b,int c);
正确:Num(int a,int b,int c);
(2) 错误:int sum=10;
正确:int Num::sum=10;
(3) 错误:n.PrintSum();
正确:n->PrintSum();    
【答案解析】[解析]
(1)函数Num为构造函数,构造函数不指定返回类型,其隐含有返回值,由系统内部使用;
(2)由于静态数据成员sum是类Num的成员,因此在初始化时必须使用作用域运算符限定其所属的类;
(3)n为指向类Num对象的指针,其访问公有成员函数需使用“->”,而不能使用“.”。