写程序时,经常需要表达足够大/足够小这类概念。一般情况下根据实际情况估计一个大概值就可以了,但终归是不爽。其实C++中提供了一个模板类numeric_limits来做这件事。示例代码如下:
</pre><pre name="code" class="cpp">#include <limits>
#include <iostream>
using namespace std;
int main()
{
cout << std::numeric_limits<int>::max() << endl;
cout << std::numeric_limits<int>::min() << endl;
return 0;
}
其内部实现为定义一个模板类,类包含多个静态方法。再对每个类型进行特化,根据类型实现这些方法的特化版本即可。