2017-02-14 84 views
0

我想在Windows 8-64位平臺上使用Visual Studio 2013中的Eigen代碼(http://eigen.tuxfamily.org/index.php?title=Main_Page),但我在MapBase.h文件中收到與「Assertion Failed」相關的錯誤。斷言在MapBase.h文件中失敗

........... 
eigen_assert(EIGEN_IMPLIES(internal::traits<Derived>::Flags&AlignedBit,(size_t(m_data) % 16) == 0) && "data is not aligned"); 
.............. 

Assertion Failed Error Screen Shot]

請讓我知道我可以解決這個問題。

+1

發佈*您的*代碼。優選地,[mcve]。 –

回答

0

正如assert告訴你的,數據m_data沒有對齊到正確的32/64位邊界。該項目配置爲檢查指針的對齊方式。

檢查調用堆棧,可能你使用了一個錯誤的指針(即-1)來表示這樣的對象,或者你有堆損壞,或者你覆蓋了內存。