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

现在哪个网站做电商好广州档案馆建设网站

现在哪个网站做电商好,广州档案馆建设网站,怎么做像京东一样的网站,免费微信快速开发平台一、decltype 关键字 1、介绍 decltype 是 C11 新增的一个用来推导表达式类型的关键字。和 auto 的功能一样#xff0c;用来在编译时期进行自动类型推导。引入 decltype 是因为 auto 并不适用于所有的自动类型推导场景#xff0c;在某些特殊情况下 auto 用起来很不方便…一、decltype 关键字 1、介绍 decltype 是 C11 新增的一个用来推导表达式类型的关键字。和 auto 的功能一样用来在编译时期进行自动类型推导。引入 decltype 是因为 auto 并不适用于所有的自动类型推导场景在某些特殊情况下 auto 用起来很不方便甚至压根无法使用。 auto varName value; decltype(exp) varName value;auto与decltype在形式上的区别如下 auto 根据 右边的初始值推导出变量的类型decltype 根据 exp 表达式推导出变量的类型跟 右边的 value 没有关系auto 要求变量必须初始化因为 auto 是根据变量的初始值来推导变量类型的如果不初始化变量的类型也就无法推导。而 decltype 不要求因此可以写成如下形式 decltype(exp) varName;2、推导规则 1如果 exp 是一个不被括号()包围的表达式或者是一个类成员访问表达式或者是一个单独的变量decltype(exp) 的类型和 exp 一致 #includestring #includeiostream using namespace std;class A { public:static int total;string name;int age;float scores; }int A::total 0;int main() {int n 0;const int r n;A a;decltype(n) x n; // n 为 intx 被推导为 intdecltype(r) y n; // r 为 const int y 被推导为 const int decltype(A::total) z 0; // total 是类 A 的一个 int 类型的成员变量z 被推导为 intdecltype(A.name) url www.baidu.com; // url 为 string 类型return 0; } 2如果 exp 是函数调用则 decltype(exp) 的类型就和函数返回值的类型一致 int func1(int, char); // 函数返回值为 int int func2(void); // 函数返回值为 int int func3(double); // 函数返回值为 intconst int func4(int, int, int); // 函数返回值为 const int const int func5(void); // 函数返回值为 const intint n 50; decltype(func1(100,A)) a n; // a 的类型为 int decltype(func2()) b 0; // b 的类型为 int decltype(func3(10.5)) c 0; // c 的类型为 intdecltype(func4(1,2,3)) x n; // x 的类型为 const int decltype(func5()) y 0; // y 的类型为 const int 3如果 exp 是一个左值或被括号()包围decltype(exp) 的类型就是 exp 的引用假设 exp 的类型为 T则 decltype(exp) 的类型为 T class A { public:int x; }int main() {const A obj;decltype(obj.x) a 0; // a 的类型为 intdecltype((obj.x)) b a; // b 的类型为 intint n 0, m 0;decltype(m n) c 0; // n m 得到一个右值c 的类型为 intdecltype(n n m) d c; // n n m 得到一个左值d 的类型为 int return 0; } 4类的静态成员可以使用 auto 对于类的非静态成员无法使用 auto如果想推导类的非静态成员的类型只能使用 decltype templatetypename T class A { private :decltype(T.begin()) m_it;public:void func(T container){m_it container.begin();} };int main() {const vectorint v;Aconst vectorint obj;obj.func(v);return 0; } 5使用decltype推导参数类型 可以在函数模板、类模板和 lambda 表达式中使用 decltype从而推断类型或者声明类型。下面给出的示例代码展示了如何在 lambda 表达式中使用 decltype推导出参数类型 #include iostreamint main() {int x 42;auto f [](decltype(x) val) { val 1; };f(x);std::cout x: x std::endl; // x: 43return 0; } 在这个例子中定义了一个 lambda 表达式 f它的参数使用了 decltype 推断出参数类型为 int。由于在 lambda 表达式中使用的变量必须是可见的因此在 lambda 表达式前面的捕获列表中使用了 []以让 lambda 表达式捕获 x。最后调用 lambda 表达式 f并将变量 x 作为参数传递给它从而使 x 的值被加 1。
http://www.dnsts.com.cn/news/245875.html

相关文章:

  • 深圳制作网站软件深圳福田香格里拉大酒店
  • dedecms网站模板下载网站建设包括的内容
  • 网站广告图片在线制作舞钢网站建设
  • 做网站盈利方式广州网站建设联系电话
  • 诚信快捷小企业网站建设苏州区网站建设
  • 一般网站用什么软件做本地搭建wordpress
  • 河北住建城乡建设网站网站建设的开发方法有哪些
  • 网站建设创客沧州seo公司
  • 企业北京响应式网站制作泰安最新通知今天
  • 备案名 网站名源代码怎么做网站
  • net和cn哪个做网站好网站建设入门pdf
  • seo网站课程网站报备之后如何建设网站
  • 外贸谷歌网站推广黄石建设网站
  • 如何用自己电脑做网站页面欧式建筑网站
  • 高校英文网站建设 文献综述韩国做 mp4下载网站
  • iis网站数据库失败专做定制型网站
  • 怎样与知名网站做友情链接百度地图网页版入口
  • 山东有实力的网站开发多少钱图片搜索图片识别
  • 网站建设选择题短视频营销推广方案
  • 专业做邯郸网站优化wordpress带前端下载
  • 宜城网站建设重庆微信网站代理商
  • 从零学习做网站网站建设实施步骤
  • 做ptt网站网站建设需注意的问题
  • 网站 微信公众号 建设方案免费玩游戏
  • 网站建设一秒互联南昌网站排名优化软件
  • 外贸平台哪个网站最好知乎简约型网站
  • 糗事百科网站 源码平度那里有做网站的
  • 网站的反链怎么做做付费网站
  • 做网站效果图是用ps还是ai淮南政务网
  • 北京正规网站建设比较音乐影视网站建设方案