Domanda

Come posso ottenere un equivalente di java.lang.Integer.MIN_VALUE su C ++?

È stato utile?

Soluzione

#include <limits>    
std::numeric_limits<int>::min();

Altri suggerimenti

Dipende cosa si intende per "equivalente". java.lang.Integer.MIN_VALUE è una costante della fase di compilazione in Java, ma std::numeric_limits<int>::min() non è una costante espressione intera in C ++. Quindi non può essere utilizzato ad esempio come dimensione della matrice (o meglio, il valore minimo di un int non può in ogni caso perché è negativo, ma lo stesso vale per le espressioni che coinvolgono, o altri valori simili, o in altri contesti che richiedono un ghiaccio ).

Se avete bisogno di una costante fase di compilazione in C ++, utilizzare INT_MIN da <climits>. In realtà si può anche usare lo stesso: numeric_limits è essenziale se si sta scrivendo codice generico, e si dispone di un certo tipo integer T che potrebbe essere int, o potrebbe essere qualcos'altro. Il suo utilizzo primario altrimenti è quello di dimostrare la vostra leet C ++ skillz, e / o rendere il codice più a lungo; -)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top