当前位置: 首页 > news >正文

苏中建设集团网站官网深圳网站建设选哪家

苏中建设集团网站官网,深圳网站建设选哪家,山西临汾建设局网站,商品推广软文800字1. 友元 #xff08;1#xff09;友元函数 ①是一种允许非类成员函数访问类的私有成员的一种机制#xff1b;可以把一个函数指定为类的友元#xff0c;也可以把整个类指定为另一个类的友元#xff1b; ②友元函数在类作用域外定义#xff0c;但需要在类体中进行声明…1. 友元 1友元函数 ①是一种允许非类成员函数访问类的私有成员的一种机制可以把一个函数指定为类的友元也可以把整个类指定为另一个类的友元 ②友元函数在类作用域外定义但需要在类体中进行声明friend声明的位置不限放在公有、私有、保护部分都一样 ③主要作用提高了程序的运行效率减少了类型和安全性检查及调用的时间开销 #include iostreamusing namespace std;class Test { public:Test() default;Test(int num):m_num(num){}~Test() default;friend void print(const Test t);private:int m_num; };void print( const Test t ) {coutt.m_numendl;}int main(int argc, char **argv) {Test t1(7);print(t1);return 0; } 2友元类 ①需要前置声明只是单纯的声明有这个类但是不知道这个类的具体构造 ②友元关系是单向的友元关系不能被传递不能被继承 3友元成员函数 ①需要在类前面前置声明友元类成员函数才可以访问友元类的成员 ②不能互为成员函数 #includeiostream using namespace std;class Date;//对Date类的提前友元类引用声明 class Time { public:Time(int, int, int); //声明构造函数void display(Date ); private:int hour;int sec;int minute; };class Date { public:Date(int, int, int); //声明构造函数friend void Time::display(Date ); private:int mouth;int day;int year; };void Time::display(Date d)//display的作用是输出年月日时分秒 {cout d.year / d.mouth / d.day ;cout Time::hour : minute : sec endl; }Date::Date(int m, int d, int y) {mouth m;day d;year y; }Time::Time(int h, int m, int s) {hour h;minute m;sec s; }int main(void) {Time t1(10, 13, 56);Date d1(4, 15, 2019);t1.display(d1);return 0; } 2. 运算符重载 1运算符重载本质上是函数重载不仅是语法上的方便也是另一种函数调用的方式 2重载的两个部分①成员函数重载②友元函数重载 3语法 //成员函数重载 //成员函数原型的格式 函数类型 operator 运算符参数表 //成员函数定义的格式 函数类型 类名::operator 运算符参数表 {函数体 }//友元函数重载 //友元函数原型的格式 friend 函数原型 operator 运算符参数表 //友元函数定义的格式 friend 函数类型 类名::operator运算符参数表 {函数体 } 4运算符重载规则 ①运算符重载不允许发明新的运算符 ②不能改变运算符操作对象的个数 ③运算符被重载后其优先级和结合性不会改变 ④不能重载的运算符 运算符符号作用域解析运算符::条件运算符?:直接成员访问运算符.类成员指针引用的运算符.*sizeof运算符sizeof ⑤选择成员函数重载方式还是友元函数重载方式 一般情况下单目运算符做好重载为类的成员函数双目运算符最好重载为类的友元函数 但这些双目运算符不能重载为类的友元函数、()、[ ]、-。 类型转换运算符只能以成员函数方式重载 流运算符只能以友元的方式重载因为重载成员函数重载方式左侧运算量就是对象本身但是和的左侧运算符是cin 或 cout而不是对象本身所以不能够使用成员函数重载方式只能申明为友元函数 //重载输出流运算符示例 friend ostream operator(ostream out, const String str); //友元函数声明 ostream operator(ostream os, const String str) //友元函数定义 {outstr.str_;return out; } ⑥类型转换运算符重载必须是成员函数、不能是友元函数不能指定返回返回类型因为已经指定了 //operator int() Integer::operator int() //注意重载这里没有返回值 {return n_; }
http://www.hkea.cn/news/14277456/

相关文章:

  • 用软件做模板下载网站大型网站 cms
  • 邢台县教育局五库建设网站高效网站推广设计
  • 怎么申请建立个人免费网站天津哪里有做网站的
  • 请人做网站注意事项网站标题的关键字怎么写
  • 电力建设工程质量监督总网站周口高端网站建设
  • 桐城做网站的公司余干县建设局网站
  • 做美食软件视频网站电商网站建设运营协议
  • 国外购物网站怎么做网站代运营服务内容有
  • wordpress跳转到子页面郑州网络营销网站优化
  • 旅游网站开发的流程网站推广途径及要点
  • 织梦网站上传数据库微信 wordpress搜索
  • 自己做下载类网站免费申请商家收款码
  • 行业网站盈利模式国外网站建设的发展
  • 网站建设与管理 pdfwordpress 需要ftp
  • 电商首页模板网站阿凡达网站建设网
  • 建站网站知乎服装图案素材网站
  • php网站的数据库在哪网站建设实训意义
  • 网站建站和项目部署一样吗做公司网站要那些资料
  • 西安演出公司网站建设集团网站 wordpress
  • 网站改版方案ppt订阅号可以做微网站
  • 广西建设协会网站黑龙江建设网站
  • 格力电器的网站建设评价wordpress按最后评论排序
  • 网站建设推广视频深圳做网站可用乐云seo十年
  • 漳州最具口碑的网站建设wordpress wpenqueuescript
  • 深圳网站建设 易通鼎网站建设与网页设计开题报告
  • 网页 网站网站开发可以用哪些语言
  • 什么网站做电脑系统好校园兼职网站建设
  • 基础网站建设素材国内开源建站cms
  • 徐州住房与城乡建设部网站青岛谁优化网站做的好处
  • 各类东莞微信网站建设推广网站如何做