使用VC6打开考生文件夹下的工程test11_1,此工程包含一个源程序文件test11_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下: ch1=7 ch2=9 源程序文件test11_1.cpp清单如下: #

admin2009-01-15  25

问题 使用VC6打开考生文件夹下的工程test11_1,此工程包含一个源程序文件test11_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:
  ch1=7    ch2=9
  源程序文件test11_1.cpp清单如下:
   #include<iostream.h>
   class  Sample
   {
   /**************** found ***************/
   char ch1,ch2
   public:
   /************** found ***************/
     friend void set(Sample s, char c1,char  c2)
   {
      s.ch1=c1;
      s.ch2=c2;
   }
       void  print() {cout<<"ch1="<<"    ch2="<<ch2<<end1;}
   };
   void main()
   {
     Sample obj;
   /************* found ****************/
      obj.set(obj,’7’,’9’);
      obj.print();
   }

选项

答案(1)错误:char ch1,ch2 正确:char ch1,ch2; (2)错误:friend void set(Samples,char c1,char c2) 正确:friend void set(Sample &s,char c1,char c2) (3)错误:obj. set(obj,’7’,’9’); 正确:set(obj,’7’,’9’);

解析 (1)主要考查考生对于变量定义格式的掌握,结尾应该使用“;”;
(2)主要考查考生对于传值调用与引用调用区别的掌握,为了改变对象的值,在这里应该使用引用调用;
(3)主要考查考生对于友元函数概念的理解,友元函数而不是当前类的成员函数,而是独立于当前类的外部函数,在使用时应该直接调用不需要使用对象访问。
转载请注明原文地址:https://kaotiyun.com/show/EKID777K
0

最新回复(0)