我正在编写一个c++类,可以实现变长数组及多种数据同数组存储,目前实现变长和数据处理函数,但无法在一个数组里存多个类型,想问一下能不能定义一个结构体,里面放一个auto类型的变量,再将结构体放入数组,这样也许可以实现同一个数组存多个类型了。
#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语言中并没有发挥什么作用。