#include <exception>
#include <string>
#include <iostream>
class SomeException:
public std::exception
{
std::string
message;
public:
SomeException( const std::string &message ):
message( message )
{
}
const char *what(void) const throw() override
{
return message.c_str();
}
};
int main(void)
{
try
{
throw SomeException( "abcdef" );
}
catch( const std::exception &exception )
{
std::cout
<< exception.what()
<< std::endl;
}
return 0;
}
I2luY2x1ZGUgPGV4Y2VwdGlvbj4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgU29tZUV4Y2VwdGlvbjoKCXB1YmxpYyBzdGQ6OmV4Y2VwdGlvbgp7CglzdGQ6OnN0cmluZwoJCW1lc3NhZ2U7CnB1YmxpYzoKCVNvbWVFeGNlcHRpb24oIGNvbnN0IHN0ZDo6c3RyaW5nICZtZXNzYWdlICk6CgkJbWVzc2FnZSggbWVzc2FnZSApCgl7Cgl9CgkKCWNvbnN0IGNoYXIgKndoYXQodm9pZCkgY29uc3QgdGhyb3coKSBvdmVycmlkZQoJewoJCXJldHVybiBtZXNzYWdlLmNfc3RyKCk7Cgl9Cn07ICAKCmludCBtYWluKHZvaWQpCnsKCXRyeQoJewoJCXRocm93IFNvbWVFeGNlcHRpb24oICJhYmNkZWYiICk7Cgl9CgljYXRjaCggY29uc3Qgc3RkOjpleGNlcHRpb24gJmV4Y2VwdGlvbiApCgl7CgkJc3RkOjpjb3V0CgkJCTw8IGV4Y2VwdGlvbi53aGF0KCkgCgkJCTw8IHN0ZDo6ZW5kbDsKCX0KCXJldHVybiAwOwp9ICA=