Зависит от того, что вы подразумеваете под «эквивалентом». java.lang.Integer.MIN_VALUE
является константой времени компиляции в Java, но std::numeric_limits<int>::min()
не является выражением целочисленной константы в C ++. Поэтому его нельзя использовать, например, в качестве размера массива (ну, мин. Значение int в любом случае не может, потому что оно отрицательное, но то же самое относится и к выражениям, в которых он содержится, или другим аналогичным значениям, или другим контекстам, требующим использования льда). ).
Если вам нужна постоянная времени компиляции в C ++, используйте INT_MIN
из <climits>
. Фактически, вы также можете использовать его в любом случае: numeric_limits
необходимо, если вы пишете универсальный код, и у вас есть целочисленный тип T, который может быть int
или может быть чем-то другим. В противном случае его основное назначение - доказать свои навыки работы с C ++ и / или сделать код длиннее; -)