C++的auto关键字

本文介绍了C++中的auto关键字,主要用在变量声明和函数返回值推断,简化了代码。文中列举了auto的使用场景,如声明普通变量、函数返回值以及需要注意的问题,包括变量必须有初始值、const变量的处理、函数返回值的指定等。
摘要由CSDN通过智能技术生成

C++引入auto关键字主要有两种用途:一是在变量声明时根据初始化表达式自动推断该变量的类型,二是在声明函数时作为函数返回值的占位符。

  • auto关键字使用场景

场景一,申明普通变量 auto num = 10;
场景二,函数返回值,如果没有auto,总是要巧那么长的返回值,有了auto关键字后,是不是心里感觉很爽。
vector str_vec;
vector::iterator it_old = str_vec.begin();
auto it_new = str_vec.begin();
场景三,申明函数返回值
auto add(int a, int b)->int {return a + b;}

  • auto使用需要注意的几个问题

1、使用auto关键字的变量必须有初始值,编译器才能推导出变量类型。
2、在传递const变量的时候,使用auto必须自己加const
const int a =10;
auto b = a; // b的类型是int
const auto c = a; // c 的类型是const int
3、关于很奇葩的函数返回值
auto关键字只能在函数的返回值使用auto关键字,并且在函数尾还需要标注返回类型
4、函数参数和模板参数不能被声明为auto。
5、对于数组类型,auto关键字会推导为指针类型,除非被声明为引用。例如:

int a[10];
auto b = a;// int *
auto &c = a; // 输出:int [10]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值