问答题

改错题 使用VC6打开考生文件夹下的工程kt13_1,此工程包含一个源程序文件kt13_1.cpp,但该程序运行有问题,请改正程序中的错误,使该程序的输出结果为: 5 5 源程序文件kt13_1.cpp清单如下: #include classA{ public: /*****************found*****************/ staticintn=1; A(){n++;}; ~A(){n--;}; }; /*****************found*****************/ intn=0; intmain(){ Aa; Ab[3]; A*c=newA; c=&a; /*****************found*****************/ cout<
【参考答案】

(1)将static int n=1;改为:static int n; (2)将int n=0;改为:int A::n=......

(↓↓↓ 点击下方‘点击查看答案’看完整答案、解析 ↓↓↓)

热门 试题

问答题
综合应用题 使用VC6打开考生文件夹下的工程kt13_3。此工程包含一个kt13_3.cpp,其中定义了类Person,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义类Person的私有数据成员forename、surname和money,forename和surname都是char型的指针数据,money是double型的数据。请在注释“ **1**”之后添加适当的语句。 (2)完成类Person的带三个参数的构造函数Person(char*f,char*s,doublem),分别为forename和surname申请新的空间来存储参数f和s指针指向的内容,注意空间的大小,最后把参数m的值赋给money,请在注释“ **2**”之后添加适当的语句。 (3)完成类Person的析构函数的定义,把forename和surname指向的空间释放,请在注释“ **3**”之后添加适当的语句。 (4)完成类Person的成员函数display的定义,使其以格式 fornamesurnamehasmoney 的形式输出内容,请在注释“ **4**”之后添加适当的语句。 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 输出结果如下: RichardBerkhas1000.56 Pressanykeytocontinue 源程序文件kt13_3.cpp清单如下: #include #include classPerson { private: **1** doublemoney; public: Person(char*f,char*s,doublem); ~Person(); voiddisplay(); }; Person::Person(char*f,char*s,doublem) { **2** strcpy(forename,f); surname=newchar[strlen(s)+1]; strcpy(surname,s); money=m; } Person::~Person() { **3** } voidPerson::display() { **4** } voidmain() { Personp( Richard , Berk ,1000.56); p.display(); }