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