I use Visual Studio 2010
with Code Analysis
活性。在我的代码中,有一行在函数中分配一些内存:
TCHAR someString[40000];
代码分析抛出警告信息:
警告 C6262:函数使用“40000”字节堆栈:超过 /analyze:stacksize“16384”。考虑将一些数据移动到堆中
我想知道我是否应该认真对待这个警告。如果我在堆栈上分配一些> 16384 的内存,我是否必须面对一些真正的麻烦?或者这只是一条一般性警告消息,提醒我必须注意一般堆栈大小?据我所知,默认堆栈大小是 1MB(如果您使用 Visual Studio)。
不可否认,该消息可能会令人困惑,因为 VS(项目属性)确实报告默认值为 1M。然而,如果你看一下这段文字warning http://msdn.microsoft.com/en-us/library/7yhee2f0%28v=vs.100%29.aspx,您会注意到代码分析的限制实际上是 16k。按照该链接底部的步骤纠正警告。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)