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

佳木斯做网站杭州互联网网站定制公司

佳木斯做网站,杭州互联网网站定制公司,网站点击排名,网页设计与制作教程第五版答案#x1f466;个人主页#xff1a;Weraphael ✍#x1f3fb;作者简介#xff1a;目前学习C和算法 ✈️专栏#xff1a;C航路 #x1f40b; 希望大家多多支持#xff0c;咱一起进步#xff01;#x1f601; 如果文章对你有帮助的话 欢迎 评论#x1f4ac; 点赞#x1… 个人主页Weraphael ✍作者简介目前学习C和算法 ✈️专栏C航路 希望大家多多支持咱一起进步 如果文章对你有帮助的话 欢迎 评论 点赞 收藏 加关注✨ 目录 一、什么是pair二、pair的初始化三、pair的大小比较四、make_pair函数 一、什么是pair 假设我想打包两种数据第一个是学生的姓名第二个是学生的学号我们就可以写出如下结构体 #include stringstruct Student {std::string _name; // 名字int _id; // 学号 };像这样只打包两种数据我们就可以使用std::pair。pair的中文意思一对也就是说它只能保存一对数据 pair是C已经定义好的结构体同时也是一个类模板并且使用前需要加上头文件utility 【pair部分源码】 template class T1, class T2 struct pair {typedef T1 first_type;typedef T2 second_type;T1 first;T2 second;pair(): first(T1()), second(T2()){}pair(const T1 a, const T2 b): first(a), second(b){} }通过以上源码我们发现pair有两个公有成员变量分别是first和second。并且它们可以直接在类外被使用。 【声明方式】 类模板实例化对象需要加上 std::pair第一个数据类型,第二个数据类型 变量名接下来我用代码演示 一下刚才的学生结构体 #include iostream #include utility #include stringint main() {// 第一个数据类型为string表示学生的姓名// 第二个数据类型为int,表示学生的学号std::pairstd::string, int stu;stu.first Weraphael;stu.second 2022;std::cout 姓名: stu.first std::endl;std::cout 学号: stu.second std::endl;return 0; }【运行结果】 二、pair的初始化 pair常见的初始化是以上第一种和第二种分别是默认构造和拷贝构造 注意如果使用默认构造函数初始化其成员变量first和second的值是0如果是string就是空字符串 除此之外还有第三种初始化方式 std::pair类型1, 类型2 变量名(第一个数据的初始值, 第二个数据的初始值); // 对应的类型一定要匹配【代码演示】 #include iostream #include utility #include stringint main() {std::pairstd::string, int p(Weraphael, 18);std::cout 姓名: p.first std::endl;std::cout 年龄: p.second std::endl;return 0; }【程序结果】 三、pair的大小比较 它们的比较顺序是这样的首先先比较first成员变量如果相等就会比较second 注意pair内部成员的类型不一样的两个对象不能比较大小 【代码验证】 pair内部已经实现过比较大小运算符重载了 #include iostream #include utility #include stringint main() {std::pairint, std::string p1(18, Weraphael);std::pairint, std::string p2(19, Weraphael);std::cout p1是否小于p2 (p1 p2) std::endl;std::pairint, std::string p3(18, zhangsan);std::cout p1是否小于p3 (p1 p3) std::endl;std::pairint, std::string p4(18, Weraphael);std::cout p1是否等于p4 (p1 p4) std::endl;return 0; }【运行结果】 四、make_pair函数 功能make_pair函数接收两个参数然后它会将这两个参数来创建pair对象 【代码样例】 #include iostream #include utility #include stringint main() {std::pairint, int p std::make_pair(1, 2);std::cout first: p.first std::endl;std::cout second: p.second std::endl;return 0; }【程序结果】 以上我们发现用了make_pair函数后代码变长了。但是实际上make_pair函数是用来简化代码的。 从C到C17结构体创建对象的代码一直都在简化。我们可以看C98是如何简化pair创建对象的代码的 有两个long long类型的变量现需要通过一个打印函数将这两个变量打包成pair后再打印 如果不使用make_pair函数就会写出以下代码 #include iostream #include utilityvoid Print(std::pairlong long, long long p) {std::cout first: p.first std::endl;std::cout second: p.second std::endl; }int main() {long long a 1;long long b 2;Print(std::pairlong long, long long(a, b));return 0; }【运行结果】 但是用了make_pair函数后以上代码就会简化很多 #include iostream #include utilityvoid Print(std::pairlong long, long long p) {std::cout first: p.first std::endl;std::cout second: p.second std::endl; }int main() {long long a 1;long long b 2;Print(std::make_pair(a, b));return 0; } 【运行结果】 注以上知识是为了为map容器打基础
http://www.zqtcl.cn/news/70867/

相关文章:

  • 做网站需要哪些审核学网站建设的工资高吗
  • 湛江公司做网站网站营销软件
  • 网站快速优化排名方法ui交互设计是什么
  • 深圳营销网站建设模板wordpress 多说 社交登陆
  • 网站做ppt模板python开发一个wordpress
  • 崇文门网站建设邢台微信群
  • 网站建设原则应考虑哪些方面vue快速建站
  • 网站开发哪些专业什么网站可以帮人做ppt赚钱
  • 做网站播放未上映的电影淘宝官网网页版淘宝网
  • 网站锚点怎么做网站前台设计
  • 舞钢市城市建设局网站中关村在线小程序
  • 山西免费网站关键词优化排名网页设计页面布局模板
  • 没有网站怎么做链接视频教程创建企业网站
  • 眼科医院网站设计怎么做6asp个人网站模板
  • 园林网站模板下载机关单位网站建设合同
  • 餐饮团购网站建设电脑网站上的电影怎么下载
  • 上海做网站比较好的公司有哪些建e网手机版
  • 自己怎么拍做美食视频网站辽宁省大学生创新创业平台
  • 做网站 怎么谈网页传奇游戏大全
  • 环球贸易网站成全视频免费观看在线看动画
  • 北京软件外包重庆百度seo整站优化
  • 建旅游网站的意义wordpress 如果分类
  • 网站建站网站建站网站营销的重点
  • 如何做阿里巴巴国际网站视频播放网站 模板
  • 设计联盟网站什么是网络营销品牌
  • 建立个人网站怎么赚钱东城区网站建设公司
  • 云南省网站开发公司家居企业网站建设流程
  • 忂州网站建设zhihe网站建设 淘宝
  • 做美食的网站可以放些小图片做pc网站排
  • 网站建设最高管理权限装饰网站建设多少钱