C学习笔记3-友元和操作符重载.docVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C学习笔记3-友元和操作符重载

CC++学习笔记2 接着说说友员friend和操作符重载operator,为了把这两个搞清楚,费了大半天劲儿搞了一个堆栈,被一堆指针问题搞得头都大了! 不过,最终还是OK了! 这次做这么一件事,搞体育活动。每个团队Team 有5个队员Comperitor ,可以对队员做入栈、出栈操作,每个队员有编号、名字。对输入队员信息、输出队员信息做操作符重载,使得输入的时候能够给出相应提示。 构建一个队员类Comperitor C++代码 /** * 队员 */ class Comperitor { private: char name[20]; //姓名 int id; //编号 public: /** * 取得ID */ int getId() { return id; } /** * 设置ID */ void setId(int id) { this-id = id; } /** * 取得名字 */ char* getName() { return name; } /** * 设置名字 */ void setName(char *name) { strcpy(this-name, name); } /** * 重载输入操作符 */ friend istream operator (istream is, Comperitor c) { cout 请输入您的编号: ; is c.id; cout 请输入您的姓名: ; is c.name; return is; } /** * 重载输出操作符 */ friend ostream operator (ostream os, Comperitor c) { os 编号: c.id endl; os 姓名: c.name endl; return os; } }; 为名字赋值的时候,name我们使用的是char数组,需要通过strcpy赋值。 /** * 设置名字 */ void setName(char *name) { strcpy(this-name, name); } 构建一个重载操作符,注意使用符号,引用方式,且操作符重载必须是友员方法! /** * 重载输入操作符 */ friend istream operator (istream is, Comperitor c) { cout 请输入您的编号: ; is c.id; cout 请输入您的姓名: ; is c.name; return is; } 构建一个团队类,用来控制入栈、出栈。 /** * 团队 */ class Team { private: /** * 队员列表 */ Comperitor *c[5]; /** * 当前队列指针 */ int pointer; /** * 队列上限 */ int MAX; /** * 队列下限 */ int MIN; /** * 是否为空 */ bool empty; /** * 是否为满 */ bool full; public: /** * 空构造 */ Team() { MAX = 5; MIN = 0; pointer = MIN; empty = false; full = false; } /** * 取得当前指针 */ int getPointer() { return pointer; } /** * 队员入队 */ void push() { // 取得当前对象指针

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档