第一周阅读程序(1) 成员函数在类内定义
2015-03-18 08:22
197 查看
问题及代码
![](http://img.blog.csdn.net/20150318082552328?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHNsY2gxMjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
程序中定义的类名是__Student;
在main函数中,定义的stud1和stud2称为___对象;
该类中,num、name、sex称为类的_私有数据成员_,其访问权限为___类内_____,意味着_不能被此类的成员函数以外的访问_;
该类中,set_data和display称为类的_公有成员函数______,其访问权限为_公有_______,意味着__能在类外被调用_______。
在main()函数中26行后,调用stud1.display();,将会出现什么结果?
![](http://img.blog.csdn.net/20150318082636976?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveHNsY2gxMjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
,请解释原因。_未赋初值,结果为随机数。_______
请删除上面加的一行代码,在main()函数的28行后,调用stud2.sex='f';,记录提示的错误:
F:\新建文件夹\初学对象\main.cpp|9| error: 'char Student::sex' is private|
F:\新建文件夹\初学对象\main.cpp|29| error: within this context|
为什么会这样 : sex为私有成员,不能被类外直接调用_;
将第9行char sex;移到第10行后面,即将sex成员声明为公共数据成员,再次编译程序。请解释不会出错的原因,并对这种做法进行评价。___公共数据成员能在类外被调用。不够保密吧,私密性不够_;
将第6行private: 去掉,结果是否发生变化,请解释原因。_不变。不定义的话,类函数默认为私有成员;
将第10行public: 去掉,记录出现的情况,并解释原因。__提示错误:原pubulic内的函数为私有,不能在类外被调用。不定义的话,类函数默认为私有成员_;
#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();,将会出现什么结果?
,请解释原因。_未赋初值,结果为随机数。_______
请删除上面加的一行代码,在main()函数的28行后,调用stud2.sex='f';,记录提示的错误:
F:\新建文件夹\初学对象\main.cpp|9| error: 'char Student::sex' is private|
F:\新建文件夹\初学对象\main.cpp|29| error: within this context|
为什么会这样 : sex为私有成员,不能被类外直接调用_;
将第9行char sex;移到第10行后面,即将sex成员声明为公共数据成员,再次编译程序。请解释不会出错的原因,并对这种做法进行评价。___公共数据成员能在类外被调用。不够保密吧,私密性不够_;
将第6行private: 去掉,结果是否发生变化,请解释原因。_不变。不定义的话,类函数默认为私有成员;
将第10行public: 去掉,记录出现的情况,并解释原因。__提示错误:原pubulic内的函数为私有,不能在类外被调用。不定义的话,类函数默认为私有成员_;
相关文章推荐
- 第一周阅读程序(1) 成员函数在类内声明,类外定义
- 第五周 阅读程序 在 main 函数中,可设置指向对象public 成员、对象函数还有对象的指针
- 2,改写本章例2.1程序,要求: (1)将数据成员改为私有; (2)将输入和输出的功能改为由成员函数实现; (3)在类体内定义成员函数;
- 第3周课后实践·阅读程序(1)-通过公共函数为私有成员赋值
- 第十四周阅读程序(3):流成员函数put,putchar输出字符
- 【8.17】建立一个用来实现求3个数和的类模板(将成员函数定义在类模板的内部),并写出调用此类模板的完整程序。
- 第三周程序阅读(1) 通过公共函数为私有成员赋值
- 5,将本章的例2.4改写为一个多文件的程序: (1)将类定义放在头文件arraymax.h中; (2)将成员函数定义放在源文件arraymax.cpp中; (3)主函数放在源文件filel.cpp中。
- 第六周项目4.1 成员函数 友元函数和一般函数有区别——阅读程序,体会注释中的说明
- 将第十四周的阅读程序中的Vehicle类的定义修改为纯虚函数,找出main()函数中将使编译出错的行删除
- 第三周程序阅读(3) 利用函数访问私有数据成员
- 4,在本章第2.6.2(题目错误)节中给出了包含类定义的头文件student.h,包含成员函数定义的源文件student.cpp以及包含主函数的源文件main.cpp。请完善该程序,在类中增加一个对数
- 第七周项目-用多文件组织多个类的程序2.role.cpp:定义角色类的成员函数
- 第十五周阅读程序3:文件流与文件位置标记有关的成员函数
- 第六周项目四--阅读程序(成员函数、友元函数、一般函数)
- 第六周项目四:成员函数、友元函数和一般函数有区别(阅读程序)
- 第3周课后实践·阅读程序(3)-利用函数访问私有数据成员
- 第14周 阅读程序,对照结果 定义成虚函数
- 3第一周课后练习·阅读计划(3)-使用函数来访问私有数据成员
- 编写一个程序,定义一个职工类,输入3个职工的编号、姓名、工资和年龄, 类中的成员函数实现输入、输出,在主函数中定义对象,并计算输出3个职工的平均工资。