内存对齐还是需要重视的——XMMATRIX 为例
生活随笔
收集整理的這篇文章主要介紹了
内存对齐还是需要重视的——XMMATRIX 为例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近研究 D3D,搜了一個教材跟著學:http://www.rastertek.com/dx11s2tut04.html
用 x64 的配置運行,完美,過了幾天需要用 x86 測試,結果一運行,程序崩潰……
趕緊排查問題,x64 的 Debug、Release 都是可以的,而 x86 則是 Debug 可以,Release 才會崩。
開發環境是 VS2015,編譯時曾經遇到一些錯誤和警告,是 UMU 自己消滅掉了,最后有一類警告應該是關鍵:
warning C4316: 'SystemClass': object allocated on the heap may not be aligned 16
原因是 XMMATRIX 需要 16 字節對齊,但代碼的作者把它塞在幾個類里,然后去 new 這些類了……
嘗試把這些類從 heap 改為 stack,問題解決!
八哥太多,不能輕易放任警告!
轉載于:https://my.oschina.net/umu618/blog/1553339
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的内存对齐还是需要重视的——XMMATRIX 为例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#编程(八十一)----------
- 下一篇: java中string和int的相互转换