我在MATLAB中創建了一個mex文件,該文件是用VS編寫的.cpp文件。我在MATLAB中收到此錯誤:error C3861:' fmax':標識符未找到。 我用max代替fmax,一切正常。我包含在我的.cpp文件中。 前一段時間,我已經完成了與另一個沒有錯誤的代碼完全相同! 如何解決這個問題?當在MATLAB中創建mex時:錯誤C3861:'fmax':標識符未找到
有沒有人知道std :: max與max的「windows.h」不同?
我在MATLAB中創建了一個mex文件,該文件是用VS編寫的.cpp文件。我在MATLAB中收到此錯誤:error C3861:' fmax':標識符未找到。 我用max代替fmax,一切正常。我包含在我的.cpp文件中。 前一段時間,我已經完成了與另一個沒有錯誤的代碼完全相同! 如何解決這個問題?當在MATLAB中創建mex時:錯誤C3861:'fmax':標識符未找到
有沒有人知道std :: max與max的「windows.h」不同?
fmin
和fmax
是一個C99功能。 Microsoft不完全支持C99標準。您可以使用std::max
和std::min
從標準算法庫代替,畢竟您編寫C++程序。
#include <algorithm>
可能是VS VS 2010? – 4pie0 2014-08-27 22:14:25
是的。它是。我使用這臺同樣的計算機創建了這個完全與我現在使用的VS.但是,嗯... MATLAB是一個不同的版本。 「max」的行爲與浮點上的「fmax」完全相同嗎?我不想失去精確度。 – Elnaz 2014-08-27 22:16:07