Ich habe dieses Beispiel in der Dokumentation von cppreference für gesehenstd::numeric_limits
#include <limits>
#include <iostream>
int main()
{
std::cout << "type\tlowest()\tmin()\t\tmax()\n\n";
std::cout << "uchar\t"
<< +std::numeric_limits<unsigned char>::lowest() << '\t' << '\t'
<< +std::numeric_limits<unsigned char>::min() << '\t' << '\t'
<< +std::numeric_limits<unsigned char>::max() << '\n';
std::cout << "int\t"
<< std::numeric_limits<int>::lowest() << '\t'
<< std::numeric_limits<int>::min() << '\t'
<< std::numeric_limits<int>::max() << '\n';
std::cout << "float\t"
<< std::numeric_limits<float>::lowest() << '\t'
<< std::numeric_limits<float>::min() << '\t'
<< std::numeric_limits<float>::max() << '\n';
std::cout << "double\t"
<< std::numeric_limits<double>::lowest() << '\t'
<< std::numeric_limits<double>::min() << '\t'
<< std::numeric_limits<double>::max() << '\n';
}
Ich verstehe den Operator "+" in nicht
<< +std::numeric_limits<unsigned char>::lowest()
Ich habe es getestet, durch "-" ersetzt, und das hat auch funktioniert. Was nützt ein solcher "+" - Operator?
-
die Ausgänge nicht die richtigen Werte für die Grenzwerte sein
+
. In diesem Fall wäre Ihre Abfrage wahrscheinlich "c ++ unary plus". Es ist ... nicht gerade intuitiv und Sie müssen noch lernen, die Dokumentation zu lesen, die Sie finden, aber IMO ist es eine nützliche Fähigkeit, sich zu kultivieren.
+
?