《C++程序设计》第8章类与对象.ppt

  1. 1、本文档共83页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本章导读 友元关系不能被继承。 友元关系是单向的,不具有交换性。若类B是类A的友元,类A不一定是类B的友元,要看在类中是否有相应的声明。 友元关系不具有传递性。若类B是类A的友元,类C是B的友元,类C不一定是类A的友元,同样要看类中是否有相应的申明。 使用友元类时注意 string类可以声明字符串对象,比传统的字符串数组更为方便。 string类的构造函数有多种重载形式,例如: string(); //创建空的string 对象 string(const char *str); //从字符串(‘\0’结束)中创建string对象,用于转换 string(const string str); //从另一个string中创建一个string 8.8? string类 1.assign() 将一个字符串赋给另一个字符串。 string assign(const string str,size_type start,size_type num); string assign(const string str,size_type num); 2.append() 将一个字符串的一部分添加到另一个字符串的后面。 string append (const string str,size_type start,size_type num); string append (const string str,size_type num); 3.insert/replace 插入和替换字符。 string insert(size_type start,const string str); string insert(size_type start,const string str,size_type insstart,size_type num); string replace(size_type start,size_type num,const string str); string replace(size_type start,size_type orgnum,const string str, size_type replacestart,size_type replacenum); string有几个常用的成员函数 4.erase() 删除字符串中的一个字符。 string erase(size_type start=0,size_type num=npos); 5.substr () 从字符串中提取一个子串。 string subst( size_type start=0,size_type num=npos); 6.find()/rfind() 分别从字符串起始位置和末尾查找子串、单个字符或者以’\0’结尾的字符数组。 size_type find( const string str,size_type start=0) const; size_type rfind( const string str,size_type start=npos) const; string有几个常用的成员函数 程序代码的复用是面向对象程序设计的主要目标之一,而支持程序代码复用的最重要的方法之一就是继承。 继承能够从一个类派生出另一个类,前者称之为基类或父类,后者称之为派生类或子类。派生类能够继承基类的功能,也能改变或增加它的功能。 代码复用是C++最重要的性能之一,它是通过类继承机制来实现的。通过类继承,我们可以复用基类的代码,并可以在继承类中增加新代码或者覆盖基类的成员函数,为基类成员函数赋予新的意义,实现最大限度的代码复用。 8.9? 类的继承 class Student { private: char Name[30]; char Sex; char Age; public: void Register(char *name,char sex,int age) {strcpy(Name,name);Sex=sex;Age=age;}; void Display() {coutName’\t’sex’\t’Ageendl;}; }; Student类 class StudentCollege { private: char Name[30]; char Sex; char Age; char Tel[20]; //多了个电话号码数据成员 public: void Register(char *name,char sex,i

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档