C++ 如何动态的确定一个数组的长度
2022/6/25 14:26:11
本文主要是介绍C++ 如何动态的确定一个数组的长度,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
C++中一般是不能使用变量作为一个数组的长度的,必须使用常量
这是因为数组作为C++的内置数据类型,其空间分配在栈内存中,这部分空间的大小在编译时就要确定,不能等到运行时再分配。常量的值在编译时就能得到,而变量的值在运行时才能确定。
但是仍然有办法使用变量作为数组的长度:绕过栈内存,将数组空间开辟在堆空间内:
1 int n; 2 cin >> n; 3 int* arr = new int[n];
这样这块内存就是自己开辟的了,可以使用变量初始化数组的长度,内存空间会在运行时动态分配。
注意:
使用完这个数组后要delete掉,防止内存泄漏。
如果可能的话,使用STL容器替代内置的数组类型,能得到更好的性能和写代码体验。
原文来自:https://blog.csdn.net/dreamiond/article/details/73181115?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1-73181115-blog-106320494.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1-73181115-blog-106320494.pc_relevant_default&utm_relevant_index=1
(顺便感叹,前几天面tx游戏客户端开发公开课寄了,太菜了,继续学习啊,把缺的知识都补上;目标明年3月tx、mhy的实习offer)
这篇关于C++ 如何动态的确定一个数组的长度的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26MATLAB 中 A(7)=[];什么意思?-icode9专业技术文章分享
- 2024-11-26UniApp 中如何实现使用输入法时保持页面列表不动的效果?-icode9专业技术文章分享
- 2024-11-26在 UniApp 中怎么实现输入法弹出时禁止页面向上滚动?-icode9专业技术文章分享
- 2024-11-26WebSocket是什么,怎么使用?-icode9专业技术文章分享
- 2024-11-26页面有多个ref 要动态传入怎么实现?-icode9专业技术文章分享
- 2024-11-26在 UniApp 中实现一个底部输入框的常见方法有哪些?-icode9专业技术文章分享
- 2024-11-26RocketMQ入门指南:搭建与使用全流程详解
- 2024-11-26RocketMQ入门教程:轻松搭建与使用指南
- 2024-11-26手写RocketMQ:从入门到实践的简单教程
- 2024-11-25【机器学习(二)】分类和回归任务-决策树(Decision Tree,DT)算法-Sentosa_DSML社区版