我有一个接收两个无符号长参数 zInit 和 zFinal 的函数,我想编写一个从 zInit 到 zFinal 的 for 循环,包括这些值。
目前我正在这样做:
int delta= (zFinal>=zInit?1:-1);
for (unsigned long k=zInit; k!=zFinal;k+=delta)
{
}
问题是我想根据 zFinal 和 zInit 之间的比较来指定条件“小于或等于”或“大于或等于”,就像我对 delta 所做的一样。什么是一个好的 C++ 解决方案?我不想写两个循环,也不想单独处理值 zFinal。