我正在使用DirectXMath
,在類中創建XMMatrix
和XMVector
。16字節對齊問題
當我打電話給XMMatrixMultiply
它會引發未處理的異常。
我在網上發現它是字節清除的問題,因爲DirectXMath
使用SIMD
指令集,導致錯誤的堆分配。
建議的解決方案之一是使用XMFLOAT4X4
變量,然後在需要時將它們更改爲臨時XMMatrix
,但它不是最好和最快的解決方案。
另一個是使用_aligned_malloc
,但我不知道如何使用它。我從來沒有做過任何內存分配,這對我來說是黑魔法。
另一個,是超載new operator
,但他們沒有提供任何信息如何做到這一點。
而關於超載方法,我沒有使用new
來創建XMMatrix
對象,因爲我沒有使用它們作爲指針。
這一切都很好,直到我決定將代碼分成類。
我認爲_alligned_malloc
解決方案將是最好的,但我不知道如何使用它,何時何地調用它。