Classe length_error
La classe funge da classe di base per tutte le eccezioni generate per segnalare un tentativo di generare un oggetto troppo lungo da specificare.
Sintassi
class length_error : public logic_error {
public:
explicit length_error(const string& message);
explicit length_error(const char *message);
};
Osservazioni:
Il valore restituito da what()
è una copia di message.data()
. Per altre informazioni, vedere what
e data
.
Esempio
// length_error.cpp
// compile with: /EHsc
#include <cstddef>
#include <exception>
#include <iostream>
#include <typeinfo>
#include <vector>
using namespace std;
int main()
{
try
{
vector<int> v(100 + static_cast<size_t>(-1) / sizeof(int));
}
catch (const exception& e)
{
cerr << "Caught: " << e.what() << endl;
cerr << "Type: " << typeid(e).name() << endl;
}
}
/* Output:
Caught: vector too long
Type: class std::length_error
*/
Requisiti
Header:<stdexcept>
Spazio dei nomi: std
Vedi anche
Classe logic_error
Thread Safety in the C++ Standard Library (Sicurezza dei thread nella libreria standard C++)