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

济南 网站 建设网站建设套餐方案

济南 网站 建设,网站建设套餐方案,西安企业100强名单,北京公司注册地址新规定🍅 初始化和清理 拷贝复制 目录 ☃️1.取地址重载 ☃️2.const取地址操作符重载 这两个运算符一般不需要重载,使用编译器生成的默认取地址的重载即可,只有特殊情况,才需要重载,比如想让别人获取到指定的内容&#xf…

🍅

初始化和清理

拷贝复制

目录

☃️1.取地址重载

☃️2.const取地址操作符重载


    这两个运算符一般不需要重载,使用编译器生成的默认取地址的重载即可,只有特殊情况,才需要重载,比如想让别人获取到指定的内容!

☃️1.取地址重载

class Date
{
public:Date* operator&(){return this;}private:int _year; // 年int _month; // 月int _day; // 日
};

就是取地址的操作符   进行了运算符重载..... 也很简单直接返回对应的this指针即可, 所以直接使用编译器默认生成的就行

☃️2.const取地址操作符重载

class Date
{
public:Date* operator&(){return this;}const Date* operator&()const{return this;}
private:int _year; // 年int _month; // 月int _day; // 日
};

这里涉及到const修饰的成员函数 —— const成员函数(const加在函数名的后面)

实际上他修饰的是该成员函数隐含的this指针,表示该成员函数中不能对类的任何成员修改

class Date
{
public:Date(int year, int month, int day){_year = year;_month = month;_day = day;}void Print(){cout << "Print()" << endl;cout << "year:" << _year << endl;cout << "month:" << _month << endl;cout << "day:" << _day << endl << endl;}const void Print() const{cout << "Print()const" << endl;cout << "year:" << _year << endl;cout << "month:" << _month << endl;cout << "day:" << _day << endl << endl;}
private:int _year; // 年int _month; // 月int _day; // 日
};
void Test()
{Date d1(2022, 1, 13);d1.Print();const Date d2(2022, 1, 13);d2.Print();
}

 

可以发现,实例化的时候加上const才会去调用const成员函数

因为说到加上const(函数后),该对象的this指针被const修饰

即 对于这句代码

const void Print() const

实际上第一个const的意思是,返回值是常量不可以被修改

第二个const属于const成员函数,修饰该对象的this指针

const void Print(const Date* this) 

由于C++中权限缩小现象,d2对象只能调用const成员函数,因为d2被const修饰,d2中的任何成员都不能修改

const Date d2(2022, 1, 13);

可以看到,如果写了一个成员函数用来改变成员变量——year

d1可以 d2不行

总结:

d2的this指针在实例化的时候已经被const修饰,d2成员只有可读属性,所以只会去调用const成员函数—— const对象不可以调用非const成员函数(权限不能放大),只能调用const成员函数 

非const对象可以调用const成员函数(权限可以缩小),只需要调用的时候编译器自动在成员前加上const即可

 const成员函数内不可以调用其它的非const成员函数吗(权限不能放大)
非const成员函数内可以调用其它的const成员函数(权限可以缩小)

 

http://www.15wanjia.com/news/155438.html

相关文章:

  • 网站建设服务文案北京品牌网站开发
  • 外国自适应企业网站微信微网站开通
  • 深圳彩票网站建设网页网站动作效果做的比较棒
  • 吴江网站制作公司做亚马逊产品测评的网站
  • 企业网站建设请示网站怎么做边框
  • 搭建一个网站需要什么中国建设招投标网站
  • php源代码做网站姑苏企业建设网站公司
  • 免费手机网页网站手机wap网站免费制作
  • 网站备案主体是什么hao123从上网官网
  • wordpress零基础建站教程app拉新推广项目
  • 南阳美容网站建设淘宝网站开发需求分析
  • 高中教学网站四川省建设厅网站为什么打不开
  • 服务器网站建设教程企业建网站需要准备哪些资料呢
  • 深圳品牌网站制作网站开发用什么开发工具好呢
  • 房山做网站简述网页的制作流程
  • 网站logo链接交换
  • wordpress做首页青岛seo推广
  • 网站域名选择三合一网站制作价格
  • 可以做立体图形的网站库尔勒做网站
  • 五寨网站建设二手车网站的建设
  • 网站建设的步骤教程视频教程wordpress图片变形
  • 网站如何做美工提高网站关键词排名
  • 网站域名缴费盐城做网站企业
  • 门户网站报价单研发网站要多长时间
  • 建设银行怎么从网站上改手机号码陕麻圈辅助软件
  • 网站集群建设和网站集约化wordpress二维码制作教程
  • 网站开发实例社区深圳市做网站知名公司有哪些
  • 手机网站制作教程视频教程网站建设需要的人才
  • python做网站前端电销crm客户管理系统
  • 商城网站风格手机 登录asp网站