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

派设计包装设计网站望野小说

派设计包装设计网站,望野小说,提高百度搜索排名,营商环境建设监督局网站. 在C中,返回指向对象内部成分的引用(handles)可能会导致封装性降低和对象空悬问题。为了避免這些问题,可以通过返回const引用来限制对内部数据的修改,从而确保只读访问 1、返回内部引用对象 下面代码中getData函数返…

.
在C++中,返回指向对象内部成分的引用(handles)可能会导致封装性降低和对象空悬问题。为了避免這些问题,可以通过返回const引用来限制对内部数据的修改,从而确保只读访问

1、返回内部引用对象

  • 下面代码中getData函数返回一个指向内部数据的引用,外部代码通过这个引用可以直接修改data数据的内容,破坏了对象封装性
#include <iostream>
#include <vector>class MyClass {
private:std::vector<int> data;public:MyClass() : data{1, 2, 3, 4, 5} {}// 返回内部数据的引用std::vector<int>& getData() {return data;}
};int main() {MyClass obj;std::vector<int>& dataRef = obj.getData();// 修改内部数据dataRef.push_back(6);// 打印内部数据for (int val : obj.getData()) {std::cout << val << " ";}return 0;
}

2、解决:返回const引用

  • 返回const引用,外部代码就只能读取数据,而不能修改
#include <iostream>
#include <vector>class MyClass {
private:std::vector<int> data;public:MyClass() : data{1, 2, 3, 4, 5} {}// 返回内部数据的const引用const std::vector<int>& getData() const {return data;}
};int main() {MyClass obj;const std::vector<int>& dataRef = obj.getData();// 尝试修改内部数据(编译错误)// dataRef.push_back(6); // 错误:不能修改const对象// 打印内部数据for (int val : obj.getData()) {std::cout << val << " ";}return 0;
}

思维导图笔记:
请添加图片描述

http://www.dtcms.com/wzjs/534394.html

相关文章:

  • 西安专业做淘宝网站的公司wordpress建站程序
  • 网站标题就一个关键词市场网站建设
  • 全新的手机网站设计如何在易语言上做网站
  • 网站下载图标什么是网站结构优化
  • 免费行情软件网站下载视频北京网站建设找降龙
  • 谷歌网站建站西宁市城东区住房和建设局网站
  • 做我的世界壁纸网站wordpress做线下交易
  • 做网站营业执照经营范围怎么填写网络营销经典失败案例
  • 企业网站程序下载移动互联网以什么为技术核心
  • 做购物网站的业务什么网站做电子相册比加快
  • 网页设计图片透明度怎么设置seo案例分析
  • 旅游类网站设计方案木渎网站建设
  • 济南集团网站建设费用平台流量排名
  • 酒店行业的网站建设赣州市城乡建设局网站
  • 网站课程建设申报书网站编辑工作
  • 建设网站能挣钱吗购物最便宜的平台
  • 站群系列服务器做视频网站广西建设科技协会网站
  • 绍兴柯桥哪里有做网站的生活服务行业网站建设
  • 太原网站设计开发公司商城模板建站
  • 网站前端工程师正版网络推广公司
  • 无锡建设建设局网站wordpress调用分类文章排序
  • 网站挖掘工具建设掌上银行官方网站
  • 网站开发新手什么软件好哈尔滨模板建站品牌
  • 一个旅游网站建设互联网域名是什么
  • yahoo不收录我的网站电视直播网站建设
  • 中国第四冶金建设有限公司官方网站网站开发 链接指向文件夹
  • 厂房验收 技术支持 东莞网站建设无锡网站服务公司
  • 企业网站首页效果图wordpress 学院主题
  • 鞍山网站制作报价网站颜色背景代码
  • 智谋网站优化公司有什么做设计接任务的网站