length_error Class
The latest version of this topic can be found at length_error Class.
The class serves as the base class for all exceptions thrown to report an attempt to generate an object too long to be specified.
Syntax
class length_error : public logic_error {
public:
explicit length_error(const string& message);
explicit length_error(const char *message);
};
Remarks
The value returned by what is a copy of message.
data.
Example
// length_error.cpp
// compile with: /EHsc /GR /MDd
#include <vector>
#include <iostream>
using namespace std;
template<class T>
class stingyallocator : public allocator< T>
{
public:
template <class U>
struct rebind { typedef stingyallocator<U> other; };
_SIZT max_size( ) const
{
return 10;
};
};
int main( )
{
try
{
vector<int, stingyallocator< int > > myv;
for ( int i = 0; i < 11; i++ ) myv.push_back( i );
}
catch ( exception &e )
{
cerr << "Caught " << e.what( ) << endl;
cerr << "Type " << typeid( e ).name( ) << endl;
};
}
\* Output:
Caught vector<T> too long
Type class std::length_error
*\
Requirements
Header: <stdexcept>
Namespace: std