#include <system_error>
using namespace std;
class AppError : public std::error_category
{
public:
AppError(){}
const char *name() const _NOEXCEPT
{
return "AppError";
}
string message(int _Errval) const
{
return "AppError Message";
}
};
AppError ae;
system_error er(std::make_error_code(std::errc::text_file_busy),"call ");
int testex()
{
int a = 20;
if (a > 10)
{
//throw std::make_error_code(std::errc::bad_address);
//throw std::make_error_code(std::_Io_errc::stream);
//throw std::error_code(10, ae);
throw er;
}
else
return 10;
return 0;
}
int main()
{
error_condition ec = make_error_condition(errc::bad_address);
std::string& str = ec.message();
try
{
auto va = testex();
cout << va << endl;
}
//catch (const std::error_code& er)
//{
// cout << er.message() << endl;
// cout << er.category().name() << endl;
//}
catch(const std::exception& er)
{
cout << er.what() << endl;
}
system("pause");
float f;
return 0;
}
using namespace std;
class AppError : public std::error_category
{
public:
AppError(){}
const char *name() const _NOEXCEPT
{
return "AppError";
}
string message(int _Errval) const
{
return "AppError Message";
}
};
AppError ae;
system_error er(std::make_error_code(std::errc::text_file_busy),"call ");
int testex()
{
int a = 20;
if (a > 10)
{
//throw std::make_error_code(std::errc::bad_address);
//throw std::make_error_code(std::_Io_errc::stream);
//throw std::error_code(10, ae);
throw er;
}
else
return 10;
return 0;
}
int main()
{
error_condition ec = make_error_condition(errc::bad_address);
std::string& str = ec.message();
try
{
auto va = testex();
cout << va << endl;
}
//catch (const std::error_code& er)
//{
// cout << er.message() << endl;
// cout << er.category().name() << endl;
//}
catch(const std::exception& er)
{
cout << er.what() << endl;
}
system("pause");
float f;
return 0;
}