浏览代码

Let rnd_value callers not care about order (#8046)

Vincent Stumpf 1 年之前
父节点
当前提交
6750837854
共有 1 个文件被更改,包括 6 次插入3 次删除
  1. 6 3
      src/common/random.hpp

+ 6 - 3
src/common/random.hpp

@@ -15,12 +15,15 @@ inline std::mt19937 generator = std::mt19937(device());
 int32 rnd(void);// [0, SINT32_MAX]
 
 /*
- * Generates a random number in the interval [min, max]
+ * Generates a random number in the interval [a, b]
  * @return random number
  */
 template <typename T>
-typename std::enable_if<std::is_integral<T>::value, T>::type rnd_value(T min, T max) {
-	std::uniform_int_distribution<T> dist(min, max);
+typename std::enable_if<std::is_integral<T>::value, T>::type rnd_value(T a, T b) {
+	if (a > b) {
+		std::swap(a, b);
+	}
+	std::uniform_int_distribution<T> dist(a, b);
 	return dist(generator);
 }