我正在编写一个c++类,可以实现变长数组及多种数据同数组存储,目前实现变长和数据处理函数,但无法在一个数组里存多个类型,想问一下能不能定义一个结构体,里面放一个auto类型的变量,再将结构体放入数组,这样也许可以实现同一个数组存多个类型了。
1条回答 默认 最新
关注 - 这篇文章讲的很详细,请看:C++中应用于for循环的auto机制,有引用和非引用两种操作
- 除此之外, 这篇博客: 【C++】auto关键字中的 1. 声明自动类型的变量,根据被赋值的类型自动推导变量的类型 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
#include <iostream> using namespace std; int main() { int x; auto y = 12.3; //y被自动推导为double cout << sizeof(x) << endl; //4 cout << sizeof(y) << endl; //8 return 0; }
auto
关键字在C语言中就已经存在了,只不过在C语言中它的作用是声明自动变量:auto int z = 123;
z
本来是局部变量,加上auto
后变成了局部的自动变量,就是当前变量的生存周期是由编译器自动决定的,但是这和局部变量没有区别,所以auto
在 C语言中并没有发挥什么作用。- 您还可以看一下 尹成老师的《信息学竞赛-C/C++入门》 C++语言课程中的 2模板别名与auto推理小节, 巩固相关知识点
解决 无用评论 打赏 举报
悬赏问题
- ¥15 为啥画版图在Run DRC会出现Connect Error?可我Calibre的hostname和计算机的hostname已经设置成一样的了。
- ¥20 网站后台使用极速模式非常的卡
- ¥20 Keil uVision5创建project没反应
- ¥15 mmseqs内存报错
- ¥15 vika文档如何与obsidian同步
- ¥15 华为手机相册里面的照片能够替换成自己想要的照片吗?
- ¥15 陆空双模式无人机飞控设置
- ¥15 sentaurus lithography
- ¥100 求抖音ck号 或者提ck教程
- ¥15 关于#linux#的问题:子进程1等待子进程A、B退出后退出(语言-c语言)