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

做b2b网站的人外包网

做b2b网站的人,外包网,网站下载文件怎么做,wordpress搭建用户注册decltype 和 auto 均为 C 里用于类型推导的关键字,不过它们在使用方式、推导规则和应用场景上存在显著差异。下面为你详细介绍它们的区别: 1. 推导依据 auto:它依据变量的初始化表达式来推导类型。也就是说,auto 定义的变量必须有…

decltype 和 auto 均为 C++ 里用于类型推导的关键字,不过它们在使用方式、推导规则和应用场景上存在显著差异。下面为你详细介绍它们的区别:

1. 推导依据

  • auto:它依据变量的初始化表达式来推导类型。也就是说,auto 定义的变量必须有初始化值,编译器会根据这个值的类型来确定变量的类型。

  • decltype:它根据表达式本身的类型来推导,并不关心表达式的值。这里的表达式可以是变量、函数调用、运算符表达式等。

2. 使用语法

  • auto:使用时直接在变量声明处用 auto 替代具体类型,然后进行初始化。
auto num = 10; // 推导出 num 的类型为 int
  • decltype:需要将表达式放在 decltype 后面的括号里,以此来推导类型。
int x = 10;
decltype(x) y; // 推导出 y 的类型为 int

3. 对引用和 const 修饰符的处理

  • auto:默认情况下会忽略引用和 const 修饰符,除非显式指定。
const int a = 10;
auto b = a; // b 的类型为 int,忽略了 const 修饰符
int c = 20;
int& ref_c = c;
auto d = ref_c; // d 的类型为 int,忽略了引用
  • decltype:会保留表达式的引用和 const 修饰符。
const int a = 10;
decltype(a) b = 20; // b 的类型为 const int
int c = 20;
int& ref_c = c;
decltype(ref_c) ref_d = c; // ref_d 的类型为 int&

4. 应用场景

  • auto:常用于简化冗长的类型声明,特别是在使用模板和迭代器时。
#include <vector>
#include <iostream>int main() {std::vector<int> vec = {1, 2, 3};for (auto it = vec.begin(); it != vec.end(); ++it) {std::cout << *it << " ";}return 0;
}
  • decltype:常用于模板编程、推导函数返回值类型以及在编译时进行类型检查。cpp
#include <iostream>template <typename T, typename U>
auto add(T a, U b) -> decltype(a + b) {return a + b;
}int main() {auto result = add(1, 2.5);std::cout << "Result: " << result << std::endl;return 0;
}

总结

  • auto 注重根据初始化值推导类型,使用方便,能简化代码,适用于日常编程中类型冗长的情况。
  • decltype 注重保留表达式的原始类型信息,在模板编程和类型推导要求严格的场景中更有用
http://www.dtcms.com/wzjs/334371.html

相关文章:

  • 如果评价网站做的好不好百度推广公司怎么代理到的
  • 做众筹网站需要什么条件免费创建个人博客网站
  • 香港网站区别网络营销成功案例ppt免费
  • 个人免费网页深圳百度首页优化
  • 龙江网站设计制作怎样推广自己的app
  • 网站二次开发的模板种类百度资源站长平台
  • 大学生网站建设与网页设计报告百度升级最新版本
  • 怎样设立网站手机免费发布信息平台
  • 做网站开发有前途吗谷歌google官网
  • 合肥市住建局官方网系统优化
  • 体育课程网站建设东莞seo计费
  • 惠州做网络推广的跟我学seo从入门到精通
  • 建材企业网站营销怎么做关键词seo优化公司
  • 2018网站开发最流行的语言推广业务
  • 东营市住房和城乡建设局网站竞价开户推广
  • 深圳网站设计多少钱网站建设7个基本流程
  • 广州品牌网站建设 优美广告加盟
  • python 网站开发 linux实时热搜榜
  • 在海外做网站 卖东西网络游戏推广
  • 公司发布网站需要备案吗免费推广的网站有哪些
  • 剧院网站建设网站seo分析常用的工具是
  • 能自己做网站接业务吗网络营销的工作内容包括哪些
  • 家居网站建设策划开发百度引流推广
  • 做视频可以领钱的网站怎么自己创建一个网站
  • 网站官网seo搜索引擎优化营销案例
  • 怎么用电脑做网站主机常用的关键词优化策略有哪些
  • 我的世界外国做图网站国家提供的免费网课平台
  • 新人做网站盈利产品推广平台排行榜
  • 网络营销模式有几种网站搜索引擎优化方案
  • 致力于做服务更好的网站建设公司谷歌外贸平台推广需要多少钱