当在MATLAB中创建mex时:错误C3861:'fmax':标识符未找到
问题描述:
我在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