length_error-Klasse
Die Klasse fungiert als Basisklasse für alle Ausnahmen, die ausgelöst werden, um einen Versuch zu melden, ein Objekt zu erstellen, das zu lang ist, um angegeben werden zu können.
Syntax
class length_error : public logic_error {
public:
explicit length_error(const string& message);
explicit length_error(const char *message);
};
Hinweise
Der von what()
ihnen zurückgegebene Wert ist eine Kopie von message.data()
. Weitere Informationen finden Sie unter what
und data
.
Beispiel
// 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
*/
Anforderungen
Header:<stdexcept>
Namespace: std
Siehe auch
logic_error-Klasse
Threadsicherheit in der C++-Standardbibliothek