C++中auto关键字的使用

本文介绍了C++中auto关键字的使用,包括它的历史、作用、推导规则以及何时使用。在C++11中,auto作为类型指示符用于编译器推导变量类型。详细讨论了auto在声明指针、引用、新式for循环、函数参数和返回值等方面的应用,同时列举了auto推导失败的情况。最后给出了使用auto简化代码的实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++中auto关键字的使用


写在前面:

作者是一个新手,文章中的内容大部分来自于其他博文,作者仅仅是加入了少量自己的理解,方便自己在遗忘时查看,并且作者会在文章末尾附上原文链接,方便各位网友前往学习


1 auto关键字简介

在C中,使用auto修饰的变量,是具有自动储存器的局部变量,但是很少有人去使用它,在C++11中,auto有了新的含义,他不再是是个储存类型指示符,而是作为一个新的类型指示符来指示编译器,auto声明的变量必须由编译器在编译时期推导而得.

#include <iostream>

using namespace std;

double ReturnDouble() {
	return 3.14;
}

int main() {
	int a = 10;
	auto b = a;
	auto c = 'a';
	auto d = ReturnDouble();

	cout << typeid(a).name() << endl;
	cout << typeid(b).name() << endl;
	cout << typeid(c).name() << endl;
	cout << typeid(d).name() << endl;
	return 0;
}

输出如下:在这里插入图片描述

注意:auto是一个占位符,编译器会根据初始化来推演出类型,填充位置,所以auto必须初始化

比如:

auto a;//不行,不知道a是什么类型
auto b=10;//可以,根据10推测出是int类型

C++中auto类似于C#中的var;

2 使用细则

  1. 使用auto来声明指针的时候,使用auto和auto没有区别

  2. 使用auto来声明引用类型的时候必须加"&"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值