第一次遇到fatal error C1076,原来是栈太小

前两天引入一个COM组件的时候,产生这样一个编译错误fatal error C1076,网上一搜,原来是这样:

 

编译错误

  fatal error C1076: 编译器限制,达到内部堆限制;使用/Zm指定更高的限制。


编译器选项 /Zmnumber 

  在“项目属性”的命令行下,添加/Zmnumber,其中number是自己想要指定的比例系数; 
  可以指定的值是:10,100,200,1000,2000,对应的memory alloction是5.0M,50MB,100MB,500MB,1000MB; 
  
  在过去的VC版本中,编译器使用的堆内存是离散的,每块都有上限;
  现在编译器是按照需要动态来分配堆内存的;
  但仍然给预编译头文件以有限固定堆内存的大小;如果不够,会给出C1076错误;
  这只是在写一些非常复杂的程序时才出现;


解决方法

  进入工程->点右键->工程属性->c++-〉命令行,在最下边输入/Zm200,点确定。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值