第二周课后实践(1)

来源:互联网 发布:蓝山酒店管理学院 知乎 编辑:程序博客网 时间:2024/06/07 17:10
/* *Copyright(c)2014,烟台大学计算机学院 *Allrights reserved. *文件名称:MADE2.cpp *作    者:张生栋 *完成日期:2015年3月18日 *问题描述:略 *输入描述:略 *输出描述:略 *版 本 号:v1.0 */#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函数中,定义的stud1和stud2称为对象??该类中,num、name、sex称为类的__成员_______,其访问权限为__私有的______,意味着__它们只能在类的内部使用_______。?该类中,set_data和display称为类的__成员函数_____,其访问权限为___公共的_____,意味着_外界可以调用________。?在main()函数中26行后,调用stud1.display();,将会出现什么结果?请解释原因。_运行后会出现三个随机数字,因为没有给stud1中的num,name,sex赋值_______?请删除上面加的一行代码,在main()函数的28行后,调用stud2.sex='f';,记录提示的错误_9 error:'char Student::sex'is private_  29 error_:within this context__?为什么会这样?_______?将第9行char sex;移到第10行后面,即将sex成员声明为公共数据成员,再次编译程序。请解释不会出错的原因,并对这种做法进行评价。'sex'被定义为公共成员数据,所以不出错,但降低了安全性________________________?将第6行private: 去掉,结果是否发生变化,请解释原因。_不会,因为若不指明,系统会默认为私有______?将第10行public: 去掉,记录出现的情况,并解释原因。_||=== ww, Debug ===|D:\ww\main.cpp|22|error: 'void Student::set_data(int, char*, char)' is private|,因为成员函数display()已经变为私有了,所以不能用main函数调用

0 0