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

网站建设系统哪个好杭州网站建设优化案例

网站建设系统哪个好,杭州网站建设优化案例,免费生成logo的软件,郑州企业网站设计公司哪家好一。auto 类型推断 auto 用于变量的自动推断#xff0c;原理是--在声明变量的时候#xff0c;根据变量的初始值的类型#xff0c;自动为此变量选择匹配的类型#xff0c;而不需要我们显示指定类型 特点#xff1a;1.auto 的类型推断是发生在编译期间的#xff0c;所以不…一。auto 类型推断 auto 用于变量的自动推断原理是--在声明变量的时候根据变量的初始值的类型自动为此变量选择匹配的类型而不需要我们显示指定类型 特点1.auto 的类型推断是发生在编译期间的所以不会影响程序执行期间的性能。 特点2.auto 在编译期间就知道了类型因此 auto 后面的变量需要立刻初始化。这样编译器才能推断它的实际类型。             //那么编译的时候才能确定 auto 的类型和整个变量的类型。              //因此auto 是有类型的可以对照理解 参数模版 T 参数模版T也是有类型的。             //然后 在编译期间就可以用真正的类型替换掉auto这个类型占位符了。 特点3.auto的使用灵活和指针引用const 等 限定符 结合使用。 特点4.auto 的类型推断 和 函数模版的推断是 非常相似的。因此我们在理解的时候可以结合着函数模版中的 参数T来对照理解 auto。也可以说 auto 这个东西也是类型声明的一部分。 auto a; //总结一传值方式的auto 会抛弃引用抛弃const 等限定符     //总结二引用传递的auto引用会被抛弃const 会被保留。 using boost::typeindex::type_id_with_cvr;//之前我们在学习函数模版的时候将函数模版中的参数分为3类。//a 指针或者引用类型但是不是万能引用//b 万能引用//c 传值方式非指针非引用//在auto 的学习过程中会参考这3类学习//c传值方式auto x 27;// x int, auto intconst auto x2 x;//x2 const int, auto int// a 指针或者引用类型 但不是 万能引用。 auto 后面直接加 就是引用类型。const auto xy x2;//xy const int , auto intcout xy type_id_with_cvrdecltype(xy)().pretty_name() endl; //结果是intauto xy2 xy; //xy2 int, auto int;//注意这里auto xy2 xy 属于传值方式引用类型会被抛弃const 属性会被抛弃把对方看成一个新副本。cout xy2 type_id_with_cvrdecltype(xy2)().pretty_name() endl; //结果是int//总结一传值方式的auto 会抛弃引用抛弃const 等限定符//总结二引用传递的auto引用会被抛弃const 会被保留。auto xy3 xy;//引用传递 先前 xy const int 引用传递会抛弃 引用因此xy3 const int auto const intauto y new auto(100); //auto int *, y int *const auto *xp x;//先前 x int auto intxp const int *auto *xp2 x;//先前 x int auto intxp2 int *auto xp3 x;//先前 x int auto int *xp3 int * xp3没有声明为指针但auto也把它推导成了指针类型//总结三 万能引用     auto wnyy1 x;//x是左值auto int, wnyy1 int     auto wnyy2 x2;//先前 x2 const intx2是左值auto int wnyy2 const int     auto wnyy3 100;//auto int, wnyy3 int 二。auto 类型对于数组和函数的推断 如果是值传递数组会退化成指针。 如果是值传递但是用引用接数组就变成了 数组的引用 const char () [14]; const char mystr[] I Love china! //mystr const char[14]; auto myarr mystr;//  auto const char *    ,,   myarr  const char * auto myarr2 mystr;    // myarr2 const char () [14]; 如果是函数 auto tempfunc myfun3;// void(*)(double , int)//函数指针 auto tempfunc2 myfun3;// void()(double , int)//函数引用 三auto 类型std::initializer_list的特殊推断 我们先来看一个普通整型的定义和赋值 int x 10; int x1(20); int x2{30}; int x3 {40}; 如果换成auto 呢 auto x 10; auto x1(20); auto x2{30}; auto x3 {40}; 然后打印xx1x2x3的类型 会发现 xx1x2都是int 只有x3的类型是 std::initializer_list 那么这个initializer_list 是啥呢initializer_list是C11引入的新类型类模版表示某种特定的值的数组。 因此 auto x5 的写法会有build error 模版参数中是 initializer_list 以及调用方式 template class T void fautofun(std::initializer_listT param) {}void main() {auto x 10;auto x1(20);auto x2{ 30 };auto x3 { 40 };using boost::typeindex::type_id_with_cvr;cout x type_id_with_cvrdecltype(x)().pretty_name() endl; //结果是intcout x1 type_id_with_cvrdecltype(x1)().pretty_name() endl; //结果是intcout x2 type_id_with_cvrdecltype(x2)().pretty_name() endl; //结果是intcout x3 type_id_with_cvrdecltype(x3)().pretty_name() endl; //结果是int// x int// x1 int// x2 int// x3 class std::initializer_listintauto x4 { 50,60 };cout x4 type_id_with_cvrdecltype(x4)().pretty_name() endl; //结果是int//x4 class std::initializer_listint//auto x5 { 50,60,89.8 };//build error,提示无法推导“auto”类型//这样调用fautofun({ 12 }); }四,   auto 不使用的场合举例 1.auto不能用于函数参数比如void myfun(auto x, int y); 2.类内中的 普通成员变量不可以是 auto 类型 3.类内的静态成员变量 可以是auto类型但是要在类内初始化  static const auto m_si 15;//被允许 五。auto 适用场合举例 简化代码。 void main() {mapstring, int mymap { {wang,6},{lisi,90} };mymap.insert(make_pair(nihao,23));mapstring, int::iterator iter;for (iter mymap.begin(); iter ! mymap.end(); iter){cout (*iter).first (*iter).second endl;}cout fengexian endl;for (auto iter mymap.begin(); iter ! mymap.end(); iter) {cout (*iter).first (*iter).second endl;} } 不确定类型时的应用。 class Teacher20 { public:static int statictestfunc() {cout Teacher20 statictestfunc endl;return 0;} };class Teacher21 { public:static double statictestfunc() {cout Teacher21 statictestfunc endl;return 100.8f;} }; template class T auto func61() {auto res T::statictestfunc();return res; }void main() {func61Teacher20();func61Teacher21(); }
http://www.zqtcl.cn/news/190764/

相关文章:

  • 马来西亚做公路投标网站设计网页多少钱
  • 织梦网站多少钱广告多的网站
  • 济南网站建站模板深圳南园网站建设
  • 国家免费技能培训官网白杨seo博客
  • 福州seo网站建设微服务网站
  • 网站宽度 像素长沙电商运营培训
  • 备案上个人网站和企业网站的区别app开发多少钱一个
  • 有限公司网站建设 中企动力佛山培训机构招生方案
  • 扫黄打非网站建设专业的高端网站制作公司
  • 做自媒体发视频用哪些网站江西网站建设哪家好
  • wordpress用户列表南宁百度seo排名优化
  • 做网站时如何写接口文档上海网站设计建设公司
  • 网站小图标怎么制作平面设计素材网站推荐
  • 多元网络兰州网站建设惠州网页建站模板
  • 网站建设中首页模板下载网页制作模板保存
  • 宁夏做网站的江苏网站建设的案例展示
  • 网站功能需求文档如何免费域名注册
  • 推广网站的软件包头移动的网站建设
  • 自己制作音乐的软件免费上海seo怎么优化
  • 学vue可以做pc网站网站站长统计怎么弄
  • 做物流的可以在那些网站找客户大淘客网站建设app
  • 石家庄兼职做网站dedecms做视频网站
  • 优化公司怎么优化网站的网站 意义
  • 唯品会一家专门做特卖的网站手机版招聘网站开发技术维护
  • 做短租哪个网站wordpress 4.7
  • 网站换空间 site网站域没到期不能续费吗
  • 找别人做网站要考虑哪些网站导航条设计欣赏
  • mvc网站开发实例wordpress雪人主题2.0
  • 红色好看的网站中山网站建设工作室
  • 如何做喊单网站flask公司网站开发