22 Diagnostics library [diagnostics]

22.2 Exception classes [std.exceptions]

22.2.4 Class invalid_­argument [invalid.argument]

namespace std {
  class invalid_argument : public logic_error {
  public:
    explicit invalid_argument(const string& what_arg);
    explicit invalid_argument(const char* what_arg);
  };
}

The class invalid_­argument defines the type of objects thrown as exceptions to report an invalid argument.

invalid_argument(const string& what_arg);

Effects: Constructs an object of class invalid_­argument.

Postconditions: strcmp(what(), what_­arg.c_­str()) == 0.

invalid_argument(const char* what_arg);

Effects: Constructs an object of class invalid_­argument.

Postconditions: strcmp(what(), what_­arg) == 0.