LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

两种方法在Visual Studio Win32控制平台程序中使用超过4G的内存,启用大地址或编译为64位平台

freeflydom
2025年1月2日 9:14 本文热度 2060

两种方法在Visual Studio Win32控制平台程序中使用超过4G的内存(以Visual Sutdio 2013为例)

如果你的程序运行中由于申请大空间而抛出了bad alloc异常,那这篇文章提出的两个方法将对你有些帮助。

捕获异常的方法很简单: try { your code...} catch (exception e) {cerr << e.what() << endl;}

 

1: 启用大地址

在解决方案资源管理器中右键点击项目->属性,选择连接器->系统->启用大地址。(不超过4G,由于还有系统,所以最多也就能申请3.x G)

 

2、64bit 系统可以选择X64平台突破内存限制

32bit系统的有4GB内存限制,因为地址是32位使得这个地址所能代表的内存空间也就 2^32 byte = 4 GB。

如果你的系统是64bit则没有4GB的限制,Visual Studio虽然只有32bit版的,但是它提供了64bit的平台编译,我们所要做的只是选择程序的编译平台是X64。

方法如下: 依旧调出属性页,右上角配置管理器,活动解决方案平台->新建,新窗口选择X64平台,之后顺着它操作就行了。

添加完的页面如下,关闭即可。

 

(有条件就升级64bit系统吧。)

 

author: YuManZi

when catching bad-alloc exception, following two way may help you, if you are developing visual studio win32 console project. 

 

Two ways to use large main memory for Microsoft Visual Studio Win32 Console  Project

1: use /LARGEADDRESSAWARE

right click your project in Solution Explorer->Properties, Linker->System, select  /LARGEADDRESSAWARE in use large address.

 

2: change platform to X64(64 bit), instead of ARM(32bit)

As we all known, 32 bit system has a memory limitation of 4GB(=2^32 bytes), so we can change to X64 platform for those 64 bit system users to avoid such a memory limitation. 

still call the Properties window for your project, click  Active Solution Platform, New, select X64 instean ARM for new platform.

转自https://www.cnblogs.com/lidabo/p/12164827.html


该文章在 2025/1/2 9:17:41 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2025 ClickSun All Rights Reserved