我有一个C++应用程序,它在运行时生成原始位图图像,并将它们推入临时std :: vector中,在每次写入时动态分配内存,然后用于写入这些图像在程序存在之前存档。目前,位图大小是1280x720。我在帧650 + -3帧后出现“错误分配”错误。我很清楚这样做的原因是RAM内存不足。这是因为如果我制作的尺寸较小(让300x200),我设法存储所有950帧ok.It很奇怪,因为我的机器有16GB的RAM.Also在任务管理器,我看到RAM显示仍然有很多免费(深绿色)空间(最多只能使用5GB)。利用只有1/3的空间。我运行在Windows 7 64位16GB内存英特尔I7 CPU。我正在调试VS2012中的程序。是否有可能操作系统限制动态分配到一些任意大小?如果是的话,如何可以我解除这个限制?在内存中缓存位图数据时发生错误分配错误
数据类型是字节(无符号字符)。是的,正如有人在下面的答案中提到的,我编译为32位。
什么是您的样品的类型? char,int还是double? –