length_error Class
クラスは、指定するオブジェクトを長すぎる生成する操作を報告するためにスローされたすべての例外の基本クラスとして機能します。
class length_error : public logic_error {
public:
explicit length_error(const string& message);
explicit length_error(const char *message);
};
解説
exception Class によって返される値は、message.データのコピーです。
使用例
// length_error.cpp
// compile with: /EHsc /GR /MDd
#include <vector>
#include <iostream>
using namespace std;
template<class _Ty>
class stingyallocator : public allocator<_Ty>
{
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;
};
}
必要条件
Header: <stdexcept>
名前空間: std