std::size_t und std::string::size_type
-
Was ist der unterschied zwischen std::size_t und std::string::size_type? (oder allen anden size_typen z.b vector, list.....)
for(std::size_t i=0;i<v.size();++i) for(std::string::size_type i=0;i<v.size();++i)
-
Das eine ist halt der allgemeine Größentyp, das Andere der Spezielle des Containers.
-
Std::size_t ist ein Typ, der garantiert jede Speichergröße halten kann.
Dazu definiert jeder STL-Container einen Typ, mit welchem er es macht, was aber in 99% der Fälle auch std::size_t ist.
-
allso so sinnlos wie durch 0 teilen ?
-
sizeofearth schrieb:
allso so sinnlos wie durch 0 teilen ?
Nö.
vector, string & Co definieren IIRC ihr size_type nach den benutzten Allokatoren, und die könnten durchaus auch mal was anderes benutzen.
-
Wenn zum Beispiel ein Allocator weniger verwaltet, dann kann er ja auch einen kleineren Typen nutzen.