- 24
- 0
- 约1.03万字
- 约 42页
- 2018-01-14 发布于湖北
- 举报
资料来自网络,请保护知识产权,请您下载后勿作商用,只可学习交流使用。
总结 判断对错 int a[][3]; Int b[]; void fun(int a[][3],int b[]); 对象数组 拷贝构造 Point::Point (Point p) { X=p.X; Y=p.Y; cout拷贝构造函数被调用endl; } this指针 Point::Point (Point p) { *this=p; cout拷贝构造函数被调用endl; } 作业: 请定义一个Box类,有数据成员length、width和height,函数成员根据需要独立设计,请设计一个该类的友元函数计算表面积。 * * * * * sList = new Student[size]; for(int i=0; isize; i++){ cout 请输入学生姓名:; cin _name; cout 请输入学生学号:; cin _index; cout 请输入学生成绩:; cin _score; sList[i] = Student(_name,_index,_score); } cout --------------------endl; cout 现有所有学生数据: endl; PrintAll(sList,size); return 0; } * 例5-23:当前对象的识别 class Student { private: string strName; unsigned long nIndex; int nScore; public: Student(string strName,unsigned long nIndex, int nScore){ this-strName = strName; this-nIndex = nIndex; this-nScore = nScore; } * 友元函数 某些情况下,为了效率和方便性,需要允许一个函数或类访问另一个类的私有成员,这时就需要声明友元。 友元在一定程度上破坏了类的封装和隐藏特性,除非在提高效率方面特别需要,一般不提倡使用友元。 在重载运算符为非成员函数时,通常将运算符函数声明为友元;在类中有另一个类的对象作为成员时,有时需要声明组合类为部件类的友元,方便对成员对象进行操作。 * 例5-28:友元函数的定义和使用 class Point{ private: double x,y; public: Point(double _x=0,double _y=0) :x(_x),y(_y) {} ~Point() {} friend double Distance(Point a, Point b); }; double Distance(Point a,Point b) { return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)); } int main(){ Point p(0,0); Point q(1,4); cout Distance(p,q) endl; return 0; } * 友元类 友元类的使用类似于友元函数,只是此时声明的是一个类,被声明为友元的类可以访问声明友元的类的所有私有数据成员。 * 例5-29:友元类的定义和使用 #include iostream using namespace std; class B; class A{ private: double x; public: friend class B; A(double x) { this-x = x;} ~A() {} }; class B{ public: B() {} ~B() {} void print(const A a ) { cout a.x endl;} }; * int main(){ A tempA(10.0); B tempB; tempB.print(tempA); return 0; } 10 运行结果: * 小结 本章重点介绍抽象与分类的思想。首先介绍了函数的定义是实现。其次介绍了类的概念以及如何定义类,包括成员数据和成员函数的概念。也介绍了对象的初始化与销毁过程,特别强调了构造函数和析构函数,以及特殊的构造函数拷贝构造函数。 * * * * * * * * * * * * * * * * * * * * * * * 例5-17:设置并显示学生信息 class Student { private: //定义字符串,用于存
您可能关注的文档
- 教案ANSYS有限元全套学习资料第一章.ppt
- 有关APQP(第四阶段).ppt
- 教案APP界面设计规范.pdf
- 教案An introduction of Harvard.ppt
- 测系大修Asterisk CLI 命令列表.pdf
- 教案Authorware职业技能培训教程.ppt
- 教案AUTOCAD教育版图形文件的简单处理方法.pdf
- 教案Bain-知识管理.ppt
- 测系大修bbs论坛需求分析.doc
- 教案BB的好肠胃.doc
- 2025年空分设备项目发展计划.docx
- 2026年银发经济白皮书:适老化家电市场机遇与健康管理服务优化.docx
- 2025杭州市上城区人民政府紫阳街道办事处编外招聘2人笔试备考题库附答案解析.docx
- 2025杭州市上城区人民政府紫阳街道办事处编外招聘3人备考试题附答案解析.docx
- 2025杨凌示范区创新创业园发展有限公司招聘历年题库(3人)附答案解析.docx
- 2025曲靖市市级机关统一公开遴选公务员笔试试题(71人)附答案解析.docx
- 2025杨凌示范区创新创业园发展有限公司招聘历年题库(3人)附答案解析.docx
- 2025曲靖市马龙区区直部分事业单位面向区内公开选调工作人员历年题库(26人)附答案解析.docx
- 基于计算机视觉的校园图书借阅场景行为识别与优化课题报告教学研究课题报告.docx
- 2025普洱市省级乡镇(街道)社会工作服务示范站社会工作专业人才招聘笔试备考题库(1人)附答案解析.docx
原创力文档

文档评论(0)