2-2-r-阅读程序(1)

来源:互联网 发布:人工智能公司 编辑:程序博客网 时间:2024/05/23 13:23

问题代码:


#include <iostream>  #include <cstring>  using namespace std;  class Student  {  private:      int num;      char name[20];      char sex;  public:      void set_data(int n, char *p,char s)      {          num=n;          strcpy(name,p);          sex=s;      }      void display( )      {          cout<<"num: "<<num<<endl;          cout<<"name: " <<name<<endl;          cout<<"sex: " <<sex<<endl;      }  };  int main()  {      Student stud1,stud2;               stud1.set_data(1,"He",'f');        stud2.set_data(2,"She",'m');       stud1.display();                     stud2.display();                     return 0;  }  


问题:

  • 程序中定义的类名是___Student_____?
  • 在main函数中,定义的stud1stud2称为_____对象______?
  • 该类中,numnamesex称为类的___数据成员______,其访问权限为___private____,意味着___只能在类内访问______
  • 该类中,set_datadisplay称为类的___成员函数,其访问权限为__public______,意味着___可以在类外访问______
  • main()函数中26后,调用stud1.display();,将会出现什么结果?请解释原因。_将会出现随机数,因为stud1数据成员未被赋值______
  • 请删除上面加的一行代码,在main()函数的28后,调用stud2.sex='f';,记录提示的错误__三个错误___?为什么会这样?__sex是私有的数据成员,不能在类外访问____
  • 将第9char sex;移到第10行后面,即将sex成员声明为公共数据成员,再次编译程序。请解释不会出错的原因,并对这种做法进行评价。___操作之后,sex成员变成了公用成员,可以在类外访问_____________________
  • 将第6private: 去掉,结果是否发生变化,请解释原因。_不会发生变化,因为类默认的是private______
  • 将第10public: 去掉,记录出现的情况,并解释原因。__去掉之后,所有的数据成员和成员函数都变成了私有成员,主函数里面对成员函数的操作不可行了____

0 0
原创粉丝点击