大家好,欢迎来到IT知识分享网。
C++中一般是不能使用变量作为一个数组的长度的,必须使用常量。
这是因为数组作为C++的内置数据类型,其空间分配在栈内存中,这部分空间的大小在编译时就要确定,不能等到运行时再分配。常量的值在编译时就能得到,而变量的值在运行时才能确定。
但是仍然有办法使用变量作为数组的长度:绕过栈内存,将数组空间开辟在堆空间内:
int *d = new int[n];
这样这块内存就是自己开辟的了,可以使用变量初始化数组的长度,内存空间会在运行时动态分配。
注意:
- 使用完这个数组后要delete掉,防止内存泄漏。
- 如果可能的话,使用STL容器替代内置的数组类型,能得到更好的性能和撸代码体验。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/12144.html