41 lines
1.2 KiB
Markdown
41 lines
1.2 KiB
Markdown
[out.of.range]
|
|
|
|
# 19 Diagnostics library [[diagnostics]](./#diagnostics)
|
|
|
|
## 19.2 Exception classes [[std.exceptions]](std.exceptions#out.of.range)
|
|
|
|
### 19.2.7 Class out_of_range [out.of.range]
|
|
|
|
[ð](#lib:out_of_range)
|
|
|
|
namespace std {class out_of_range : public logic_error {public:constexpr explicit out_of_range(const string& what_arg); constexpr explicit out_of_range(const char* what_arg); };}
|
|
|
|
[1](#1)
|
|
|
|
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/diagnostics.tex#L257)
|
|
|
|
The classout_of_range defines the type of objects thrown as exceptions to report an
|
|
argument value not in its expected range[.](#1.sentence-1)
|
|
|
|
[ð](#lib:out_of_range,constructor)
|
|
|
|
`constexpr out_of_range(const string& what_arg);
|
|
`
|
|
|
|
[2](#2)
|
|
|
|
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/diagnostics.tex#L270)
|
|
|
|
*Postconditions*: strcmp(what(), what_arg.c_str()) == 0[.](#2.sentence-1)
|
|
|
|
[ð](#lib:out_of_range,constructor_)
|
|
|
|
`constexpr out_of_range(const char* what_arg);
|
|
`
|
|
|
|
[3](#3)
|
|
|
|
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/diagnostics.tex#L281)
|
|
|
|
*Postconditions*: strcmp(what(), what_arg) == 0[.](#3.sentence-1)
|