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

做的好英文网站wordpress 发视频

做的好英文网站,wordpress 发视频,带有网站开发的图片,网页游戏排行选择常成员变量、常成员函数与常对象 常成员变量 声明为常成员变量的成员变量#xff0c;在对象被创建后就不能被修改常成员变量必须在对象的构造函数初始化列表中赋值#xff0c;不能在构造函数体中赋值初始化列表的执行是在函数体执行之前就执行了的。上面这种写法和下面的写…常成员变量、常成员函数与常对象 常成员变量 声明为常成员变量的成员变量在对象被创建后就不能被修改常成员变量必须在对象的构造函数初始化列表中赋值不能在构造函数体中赋值初始化列表的执行是在函数体执行之前就执行了的。上面这种写法和下面的写法类似但下面的写法叫作函数体内赋值对于内置类型如int类型的成员变量使用构造函数初始化列表来初始化和使用赋值语句来初始化其实差别并不大。但是对于类类型的成员变量使用初始化列表的方式初始化比使用赋值语句初始化效率更高因为少调用了一次甚至几次该成员变量相关类的各种特殊成员函数如构造函数等   在C中对象的构造过程分为两个阶段初始化阶段和构造函数体执行阶段。在初始化阶段成员变量被初始化包括非常成员变量和常成员变量。而构造函数体执行阶段则是在初始化阶段之后用于执行用户自定义的构造逻辑。 由于常成员变量必须在对象创建后就不能被修改所以必须在初始化阶段完成对常成员变量的初始化。而初始化列表提供了在初始化阶段对成员变量进行初始化的机会因此常成员变量的初始化必须在构造函数初始化列表中完成。 常成员变量的值在对象生命周期内保持不变。 常成员函数 声明为常成员函数的成员函数不会修改对象的状态在常成员函数中不允许修改非常成员变量也不允许调用非常成员函数 常对象 声明为常对象的对象在创建后就不能被修改常对象只能调用常成员函数不能调用非常成员函数以确保对象的状态不能改变常对象的所有成员变量都被视为常成员变量 总结 常成员变量通常用于声明对象的状态中不希望被修改的部分。常成员函数用于表明该函数不会修改对象的状态以便于在常对象上调用。常对象是在声明时使用 const 关键字修饰的对象它的状态和行为受到限制只能调用常成员函数并且不能修改成员变量。 mutable关键字 从上述定义概述中我们可以知道常成员函数是不能修改对象内的任何成员变量的值的但是设计类成员变量的时候假如确实遇到了需要在const结尾的成员函数中希望修改成员变量值的需求怎么办呢 也许有人会说那就把函数末尾的const去掉变成一个不以const结尾的成员函数。那这个时候可能面临上面曾提到过的另外一个问题——如果这个成员函数从const变成非const了那么就不能被const对象调用了 所以引入了mutable修饰符关键字来修饰一个成员变量。一个成员变量一旦被mutable所修饰就表示这个成员变量永远处于可变状态即使是在以const结尾的成员函数中。 如下所示我们定义一段代码 class Human { public:Human(){};Human(std::string name):_name(name){};virtual void show(){std::coutthis is human!std::endl;}std::string getName() const{return this-_name;}int getAge() const {return _age;} private:std::string _name;int _age; }; 在上述代码的基础上我们将一个getAge这个常成员函数修改一下 可以看到编译器会自动报错原因是因为在常成员函数中不能修改任何一个成员变量的值这时如果我们必须要进行修改就需要将成员变量声明为mutable的即 mutable int _age; 这样代码就不会报错且满足我们的需求了。 完整代码如下 class Human { public:Human(){};Human(std::string name):_name(name){};virtual void show(){std::coutthis is human!std::endl;}std::string getName() const{return this-_name;}int getAge() const {return _age;} private:std::string _name;mutable int _age; };
http://www.pierceye.com/news/924870/

相关文章:

  • 深圳做公司网站关键词规划师工具
  • 长春市建设信息网站sem代运营推广公司
  • 宜昌网站建设平台有经验的盐城网站开发
  • wordpress 众筹网站模板wordpress首页只显示一篇文章
  • 嘉兴seo网站推广网页设计与制作课程结构
  • 江苏 网站 备案百度站长之家工具
  • 新加坡 网站建设专业简历制作网站有哪些
  • 河北外贸网站建设大连建设网球场价格
  • 北京企业网站制作哪家好新余商城网站建设
  • 网站建设对客户的优势单位建设网站的目的
  • seo网站建站公司的主页珠江夜游微信公众号
  • 建筑人才网 中高端招聘网站专业网站开发开发
  • 江门官网建站公司wordpress get_tax_meta
  • 云南省建设系统网站wordpress wdlog主题
  • 做医疗网站颜色选择网站改版301怎么做
  • 淘宝网站建设步骤做网络网站需要三证么
  • 免费网站域名注册申请视频网站开发策划书
  • 如何在社交网站做销售无锡做网站企业
  • 网站建设首选唯美谷wordpress小程序编辑
  • openwrt 网站开发北京建机职业技能鉴定中心官网
  • 莱芜新站优化wordpress打卡签到领红包
  • wordpress 网站上传到服务器免费在线自助建站
  • 连云港网站优化公司网站优化竞争对手分析
  • 网页设计案例图片网站优化如何收费
  • 个人网站包含哪些内容昆明建企业网站多少钱
  • 摄影作品共享网站开发背景企业互联网服务平台
  • 伍佰亿网站建设礼品回收网站建设
  • 优秀的wordpress涉及seo关键词排名网络公司
  • 徐州免费建站wordpress 宣布停止
  • 黑龙江建设人员证件查询网站北京广告公司地址