gpt4 book ai didi

C++,数组大小必须是一个常量表达式

转载 作者:太空狗 更新时间:2023-10-29 20:11:53 24 4
gpt4 key购买 nike

<分区>

我目前正在阅读拉普曼的《C++ 入门》一书。在第 113 页它说

The number of elements in an array is part of the array’s type. As a result, the dimension must be known at compile time, which means that the dimension must be a constant expression.

另外它说我们不能做这样的事情

unsigned cnt  = 43; //not an const expression
string bad[cnt]; // error

但事实并非如此,我编译它没有任何问题,我什至可以做这样的事情

int i;
cin >> i;
get_size(i);

void get_size(int size) {
int arr[size];
cout << sizeof (arr);
}

而且效果很好,那么为什么每本书都说数组大小必须在编译时知道呢?还是必须是const表达式?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com