C/C++教程

C++关键字之类型说明符 auto

本文主要是介绍C++关键字之类型说明符 auto,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

C++11新标准引入了auto类型说明符,用它就可以让编译器替我们去分析表达式所属的类型,auto让编译器通过初始值类推算变量的类型。

auto使用方法:

  1. 使用简单类型作为初始类型
auto i = 0, *p = &i;    // 正确,i是整形,p是整形指针
auto sz = 0, pi = 3.14;    // 错误,sz跟pi类型不一致
  1. 使用引用作为初始类型
    使用引用其实是使用引用的对象,特别是当引用被作为初始值时,真正参与初始化的是被引用的对象的值,此时编译器会以引用的都西昂的类型作为auto的类型。
int i = 0, &r = i;
auto a = r;    // r是对i的引用,此时a的类型为int
  1. 使用const类型作为初始类型,auto一般会忽略掉顶层const,同时保留底层const
const int ci = i, &cr = ci;
auto b = ci;    // 忽略掉顶层const,b的类型为int
auto c = cr;    // cr是对ci的引用,类型同上
auto d = &i;    // d的类型是整形指针
auto e = &ci;   // e的类型是指向整型类型的指针,对常量对象取地址是一种底层const
  1. 使用引用作为初始类型,初始值中的顶层const属性仍然保存
auto k = ci, &l = i;    // k为整型,l为整型引用
auto &m = ci, *p = &ci; // m是整型常量的引用,p是指向整型常量的指针
auto &n = i, *p2 = &ci; // 错误,n是整型引用,p2是指向整型常量的指针
这篇关于C++关键字之类型说明符 auto的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!