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

网站建设三站合一商城建站模板

网站建设三站合一,商城建站模板,网站建设流程咨询,网站开发与管理大作业简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!

优质专栏:Audio工程师进阶系列原创干货持续更新中……】🚀

人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

更多原创,欢迎关注:Android系统攻城狮

欢迎关注Android系统攻城狮

1.前言

本篇目的:C++20结构化绑定应用实例。

2.C++20结构化绑定介绍

  • C++20 引入了一种新的特性:结构化绑定(Structured Binding),这是一种简化数组和结构体(struct)初始化的方式。结构化绑定允许你将数组或结构体的元素或成员分别绑定到新的变量名,从而使得代码更加清晰和易读。
  • 结构化绑定主要针对数组和结构体类型的初始化。当你声明一个数组或结构体变量,并给它赋初值时,你可以使用结构化绑定来将初值中的每个元素或成员分别绑定到一个新的变量名。这样,你就可以在后续的代码中使用这些新绑定的变量名,而不是直接使用初值中的元素或成员名。
  • 结构化绑定的基本语法如下:

auto [var1, var2, var3, …] = arr_or_struct;
其中,arr_or_struct 是一个数组或结构体类型的变量,var1, var2, var3, … 是新的变量名,它们分别对应 arr_or_struct 中的每个元素或成员。

  • 结构化绑定有一些使用上的限制。首先,它只能用于自动类型(即编译时无法确定具体类型的变量),不能用于静态类型或模板类型。其次,结构化绑定不能用于函数参数或返回类型,也不能用于类(class)的成员变量或方法。此外,结构化绑定不能用于初始化一个结构体或类的对象,只能用于初始化数组或结构体变量。
  • 结构化绑定在实际编程中有很多应用场景。例如,当你需要处理一个包含多个元素的数组时,你可以使用结构化绑定将数组中的每个元素分别绑定到一个新的变量名,从而在后续的代码中更容易操作这些元素。同样,当你定义一个结构体类型,并给它赋初值时,你可以使用结构化绑定将初值中的每个成员分别绑定到一个新的变量名,从而使得代码更加清晰和易读。
  • 它使得数组和结构体类型的初始化更加方便和直观。通过使用结构化绑定,你可以将数组或结构体的元素或成员分别绑定到新的变量名,从而使得代码更加清晰和易读,同时也提高了编程效率。

3.C++普通用法

#include <iostream>
#include <memory>
using namespace std;int set(int a, int b, int c, int d, int e, int f){printf("%s(), line = %d\n",__FUNCTION__,__LINE__);return 0;
}int main(){set(1, 2, 3, 4, 5, 6);
}

4.c++20结构化绑定用法示例

v1.0版本

#include <iostream>
#include <memory>
using namespace std;struct SetParams {int a;int b;int c;int d;int e;int f;
};int set(int a, int b, int c, int d, int e, int f){printf("---->%s(), line = %d\n",__FUNCTION__,__LINE__);return 0;
}void  set(SetParams& s) {set(s.a, s.b, s.c, s.d, s.e, s.f);
}int main(){SetParams mSetParams = {1,2,3,4,5,6};  set(mSetParams);
}

v2.0版本

#include <iostream>
#include <memory>
using namespace std;struct SetParams {int a;int b;int c;int d;int e;int f;
};int set(int a, int b, int c, int d, int e, int f){printf("%s(), line = %d\n",__FUNCTION__,__LINE__);return 0;
}void  set(SetParams& s) {set(s.a, s.b, s.c, s.d, s.e, s.f);
}int main(){SetParams *mSetParams;mSetParams = new SetParams{1,2,3,4,5,6};set(*mSetParams);
}

v3.0版本

#include <iostream>
#include <memory>
using namespace std;struct SetParams {int a;int b;int c;int d;int e;int f;
};int set(int a, int b, int c, int d, int e, int f){printf("%s(), line = %d\n",__FUNCTION__,__LINE__);return 0;
}void  set(SetParams& s) {set(s.a, s.b, s.c, s.d, s.e, s.f);
}int main(){std::unique_ptr<SetParams> mSetParams; mSetParams = std::unique_ptr<SetParams>{new SetParams{1,2,3,4,5,6}};set(*mSetParams);
}
http://www.yayakq.cn/news/336470/

相关文章:

  • 涿州网站建设涿州dw建设网站
  • 温州平阳县企业网站搭建推荐上海外贸网站建设公司
  • 杭州市建设信用网网站商业网站建设
  • 计算机专业论文网站开发电商分销平台
  • 西安哪些做网站的公司好营销策划公司名称
  • 泰安做网站建设的腾博会的网站是什么
  • 做一个网站中的搜索功能怎么做做彩票网站违法的吗
  • php网站本地搭建wordpress cms系统
  • 网站建设费用都选网络怎样给响应式网站提速
  • 曲阜市建设局网站WordPress谷歌字体会慢
  • 中山网站建设文化如何四川住房和城乡建设九大员网站
  • 企业系统化管理的优势搜索引擎优化培训班
  • 东方网景做网站怎么样dw制作自己的网址
  • 新郑网站建设公司wordpress设置为繁体字
  • 网站运营与管理网站管理员权限
  • 免费模板网站推荐口腔医院网站源码
  • 网站推广营销应该怎么做app界面设计案例
  • 免费企业网站模板源码小程序免费制作平台代码
  • 建筑论坛网站做网站怎么在国外服务器租用
  • 选择网站做友情链接的标准一般是做设计素材网站
  • 绍兴做网站公司建设网站招标文件
  • 电脑怎做单页网站wordpress建站入门
  • 做网站赚取广告费深圳品牌网站制作
  • 做网站只用php不用html做企业网站设计价格是多少钱
  • 石门县建设局网站深圳网站设计排名
  • 个人模板建站如何在手机上制作动画
  • 网站开发php怎么样报考项目经理证需要什么条件
  • 如何查看网站备案企业网站建设与网页设计学什么的
  • 中山企业网站设计wordpress允许ping
  • 潍坊昌大建设集团网站嵌入式软件工程师培训