Decimal.h C++ 库错误
Decimal.h C++ library errors
我正在 PPP Bjarne Stroustrup 书中学习 C++。在第四章,我意识到了双重不精确问题,我开始寻找一些替代方案(十进制类型)。
我找到了 this 库,但是我的编译器在 lib 文件中显示了一些错误。
Description Resource Path Location Type
'::max' has not been declared chapter4.drill line 46, external location: C:\Users\GAMEOVER\Documents\Libaries\decimal_for_cpp-master\include\decimal.h C/C++ Problem
Description Resource Path Location Type
'numeric_limits' is not a member of 'std' chapter4.drill line 46, external location: C:\Users\GAMEOVER\Documents\Libaries\decimal_for_cpp- master\include\decimal.h C/C++ Problem
Description Resource Path Location Type
expected primary-expression before '>' token chapter4.drill line 46, external location: C:\Users\GAMEOVER\Documents\Libaries\decimal_for_cpp-master\include\decimal.h C/C++ Problem
你可以在这里看到第 46 行:
#ifndef DEC_NO_CPP11
#include <cstdint>
46. #define DEC_MAX_INT32 (std::numeric_limits<int32_t>::max())
#else
#ifndef DEC_EXTERNAL_LIMITS
#ifndef __STDC_LIMIT_MACROS
#define __STDC_LIMIT_MACROS
#endif
#if defined(__GXX_EXPERIMENTAL_CXX0X) || (__cplusplus >= 201103L)
#include <cstdint>
#else
#include <stdint.h>
#endif
#endif
#define DEC_MAX_INT32 INT32_MAX
#endif
我将 Eclipse 与 MinGW + GCC (4.8.1) 一起使用
另外,我将编译器设置为使用 C++11
*如果您有任何改进我的问题的建议,请说出来。
正如 Dieter 所说,
您只需包含此内容即可解决问题:
#include <limits>
希望对其他人有所帮助。
现在已在 GitHub 存储库中更正。
请在 GitHub 注册与此库相关的问题 - 否则您可能会在这里被其他人否决(?)。
我正在 PPP Bjarne Stroustrup 书中学习 C++。在第四章,我意识到了双重不精确问题,我开始寻找一些替代方案(十进制类型)。
我找到了 this 库,但是我的编译器在 lib 文件中显示了一些错误。
Description Resource Path Location Type
'::max' has not been declared chapter4.drill line 46, external location: C:\Users\GAMEOVER\Documents\Libaries\decimal_for_cpp-master\include\decimal.h C/C++ Problem
Description Resource Path Location Type
'numeric_limits' is not a member of 'std' chapter4.drill line 46, external location: C:\Users\GAMEOVER\Documents\Libaries\decimal_for_cpp- master\include\decimal.h C/C++ Problem
Description Resource Path Location Type
expected primary-expression before '>' token chapter4.drill line 46, external location: C:\Users\GAMEOVER\Documents\Libaries\decimal_for_cpp-master\include\decimal.h C/C++ Problem
你可以在这里看到第 46 行:
#ifndef DEC_NO_CPP11
#include <cstdint>
46. #define DEC_MAX_INT32 (std::numeric_limits<int32_t>::max())
#else
#ifndef DEC_EXTERNAL_LIMITS
#ifndef __STDC_LIMIT_MACROS
#define __STDC_LIMIT_MACROS
#endif
#if defined(__GXX_EXPERIMENTAL_CXX0X) || (__cplusplus >= 201103L)
#include <cstdint>
#else
#include <stdint.h>
#endif
#endif
#define DEC_MAX_INT32 INT32_MAX
#endif
我将 Eclipse 与 MinGW + GCC (4.8.1) 一起使用 另外,我将编译器设置为使用 C++11
*如果您有任何改进我的问题的建议,请说出来。
正如 Dieter 所说, 您只需包含此内容即可解决问题:
#include <limits>
希望对其他人有所帮助。
现在已在 GitHub 存储库中更正。 请在 GitHub 注册与此库相关的问题 - 否则您可能会在这里被其他人否决(?)。