从c到c++——6:auto

在编写c程序时,需要在初始化变量时清楚地知道该变量的数据类型,有时这到这一点并不容易,在涉及到函数指针,多级指针时往往很难一下子给出准确的值。使用auto关键字很好的提高编程效率。

auto关键字会根据=右边的类型自动生成适合的类型。auto声明的变量必须初始化

c++中判断类型的代码:

cpp 复制代码
#include<iostream>
#include<typeinfo>
using namespace std;
int main()
{
	int x = 10;
	auto y = x;
	cout<<typeid(x).name()<<endl;
	cout << typeid(y).name() << endl;

	system("pause");
	return 0;
}

可以检测出auto声明的变量与'='右侧类型相同。


在我的测试下:**vs2022允许auto类型做返回值,**dev和g++不允许,三者都不允许auto做参数类型。

相关推荐
zmzb01032 小时前
C++课后习题训练记录Day154
数据结构·c++·算法
江华森2 小时前
Python神经网络编程(四):Python从零搭建神经网络
开发语言·python·神经网络
Helen_cai3 小时前
OpenHarmony 完整项目工程整合规范 + 模块化分层架构(API23+ 标准企业级结构)
开发语言·华为·php·harmonyos
大圣编程8 小时前
Java 多维数组详解
java·开发语言
殳翰11 小时前
下服务器端开发流程及相关工具介绍(C++)
开发语言·c++
落寞的星星11 小时前
这个对象就包含了已经转换好的DFA和各种词法分析器运转所需要的参数。下一步,我们就可以用ScannerInfo对象创建出Scanner对象,请看下面的代码:
开发语言·c#
nothing&nowhere11 小时前
用 Python 做问卷数据清洗:无效样本检测与处理实战
开发语言·python·数据清洗·数据处理·问卷星·问卷星脚本·刷问卷
青瓦梦滋11 小时前
协议定制/序列化-反序列化(Linux视角)
linux·服务器·网络·c++
2601_9615934212 小时前
Rust 开发环境配置繁琐?RustRover 开箱即用搞定编码调试
开发语言·后端·macos·rust
HZZD_HZZD12 小时前
DL/T 645-2026新国标深度解读与智能电表协议适配实战:从帧结构变化到Java采集器升级的全链路改造方案
java·开发语言