один происходит в определенных крайних случаях. Лечится так же ... в основном. Иногда немного сложно различить их, когда такое различие желательно.

я есть строка:

std::uniform_real_distribution<T> distribution(std::numeric_limits<T>::lowest(), 
                                               std::numeric_limits<T>::max());

Компилируется, но вылетает при Debug (VS 2017CE). Я предполагаю, что согласно документацииstd::uniform_real_distribution:

Требует, чтобыa ≤ b а такжеb-a ≤ std::numeric_limits<RealType>::max()

когда мойb является::max() а такжеa является::lowest(), условие:

b-a ≤ std::numeric_limits<RealType>::max()

не выполняется какb-a в основном удваивает значениеmax, Есть ли способ обойти это так, чтобы я оставил такой широкий диапазон чисел?::min() работает отлично, но пропускает отрицательные значения. Проблема возникает только для плавающих чисел.

Ответы на вопрос(2)

Ваш ответ на вопрос