私のUbuntu Linuxの/usr/include/c++
で検索しています。 /usr/include/c++/stdexcept
では、私はこれが見つかりました:クラスstd :: out_of_rangeは完全に定義されていますか?
class out_of_range : public logic_error
{
public:
explicit out_of_range(const string& __arg);
};
をしかし、私はどこでもout_of_range()
コンストラクタの定義を見つけることができません。 STLはout_of_range()
例外をスローした場合も、それは(stl_vector.h
から取られた例)を使用しています
:
__throw_out_of_range(__N("vector::_M_range_check"));
そして、私は__throw_out_of_range()
を見つけることができる唯一のことは、次のとおりです。
void __throw_out_of_range(const char*) __attribute__((__noreturn__));
ことができます親切に言って、out_of_range
クラスの定義を教えてください。
[このページ](http://en.cppreference.com/w/cpp/error/out_of_range)を見ましたか? – abiessu
+1良い質問です。それも知りたいです。 – lulyon
gccのgithubミラーで見つけました:、60行目。 –
lulyon