فهرست منبع

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);
 }