我的第一个问题是,迭代特定类型的整个可能值范围的最佳方法是什么?似乎没有真正干净的方法来实现这一点。
最佳答案
对于整数类型 T
你可以使用
const T i0 = std::numeric_limits<T>::min();
const T in = std::numeric_limits<T>::max();
for(T i=i0;i!=in;++i) do_something(i);
do_something(in);
浮点类型有点棘手。 IEEE754 定义了一个操作,允许您跳到任何给定值之上(或之下)的下一个可表示数字,但据我所知,没有公开它的标准 C++ 函数。
关于c++ - 遍历整数类型的整个范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23838487/