分析代码void dis_1(const int x){ array <int,x> myarr{1,2,3,4,5}; cout << myarr[1] << endl; } void dis_2(){ const int x = 5; array <int,x> myarr{1,2,3,4,5}; cout << myarr[1] << endl; } int main() { dis_1(5); dis_2(); }
时间: 2023-06-25 08:06:53 浏览: 110
这段代码定义了两个函数`dis_1`和`dis_2`,以及一个`main`函数。两个`dis`函数的作用是印出一个数组中下标为1的元的值。不同的是,`dis_1`函数的参数是一个整数`x`,用来定义数组的大小;而`dis_2`函数中的数组大小是通过常量`x`定义的。
在`main`函数中,分别调用了`dis_1(5)`和`dis_2()`,结果输出的都是数组中下标为1的元素的值。其中,`dis_1(5)`中的`5`作为参数传递给`x`,用来定义数组的大小为5;`dis_2()`中的`x`定义为常量`5`,用来定义数组的大小为5。
需要注意的是,`array`是C++11中新增的标准库类型,用来表示固定大小的数组。它的定义方式为`array<类型,大小> 数组名`。在这个例子中,`array<int,x>`表示一个整型数组,大小为`x`。如果`x`不是常量,那么编译器会报错。
阅读全文