【发布时间】:2011-08-31 23:51:55
【问题描述】:
我有一个用于平铺地图的二维整数数组。
地图的大小未知,并在运行时从文件中读取。目前最大的文件是 2500 个项目(50x50 网格)。
我有一个早期问题的动态内存分配工作方法,但人们一直说这是个坏主意,所以我一直在考虑是否只使用大数组而不是在使用较小的地图时将其全部填满.
人们知道这两种解决方案的优缺点吗?欢迎任何建议或个人意见。
c++ 顺便说一句
编辑:所有地图都是我制作的,所以我可以选择最大尺寸。
【问题讨论】:
-
您有什么理由不能使用 STL 来维护您的数组,以免自己为自己动态分配数组而烦恼?
-
@Doug T 你说的是 STL 的哪一部分。我考虑过使用向量,但由于数组一次完全填充,并且唯一一次编辑它是使用将替换所有数据的新地图。
-
Re: 编辑 - 即使它们都是由您制作的,如何阻止有人恶意向您的用户发送一个故意溢出并在以后利用固定大小的文件?
-
@awoodland 离开话题购买有人这样做有什么意义?我看不出它的目的?
-
@Skeith,Mark B 的回答会起作用
标签: c++ arrays data-structures dynamic-memory-allocation