Auto的用法(C++)

 Auto是一个C++的关键字(类似于int float)。C++中的auto关键字用于自动推导变量的类型,既这个关键字会跟随他后面变量的初始化来判断到底是什么类型。

以下是一个使用auto关键字的示例代码:

#include <iostream>
using namespace std;
int main() {
    auto x = 10;  // 变量x的类型被自动推导为int
    auto y = 3.14;  // 变量y的类型被自动推导为double
    std::cout << "x = " << x << std::endl;
    std::cout << "y = " << y << std::endl;
    return 0;
}

在以上示例中,使用auto关键字定义了两个变量x和y,它们的类型分别被自动推导为int和double。

以上代码同等于↓

int x=10;
double y=3.14;

那么既然可以用int,char,float定义类型,为什么要用auto呢?

使用auto的原因有12:

  1. 安全。auto声明的变量,其类型推导自初始化物,所以它们必须被初始化,避免了未初始化引起的bug。   比如求数组中的最大值,定义ans,ans需先赋值INT_MIN(可以理解为极小数),不然会出错。
  2. 精确。使用auto可以避免类型错误,如std::map键是const,存储的是std::pair<const std::string, int>,使用auto可以精确表达类型。
  3. 简洁。使用auto可以减少代码量,使代码更简洁。   比如x的范围是0<=x<=2^64-1,如果定义为int会溢出。这么大范围需要用unsigned long long。如果程序里多次出现unsigned long long,未免太过冗长。
  4. 未知类型。当不知道表达式的准确类型时,可以使用auto。

    写作不易,如果看懂了,能不能留个赞??

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值