Здравствуйте, __LeOn__, Вы писали:
__L>библиотеки. В общем портировать под Unix, но ANSI я её портировал, а вот с UNICODE возникла
__L>следующая проблема с std::exception и классами от него унаследованными, которые в этой библиотеке повсеместно используются. Мне не ясно как перевести на Unicode метод what и эти классы
__L>вцелом из-за использования в них const char*.
строку возвращаемую из метода what() можно использовать как ключ в ассоциативном контейнере,
например:
std::map<const char*, const wchar_t*> errorMessages;
class my_exception : public std::exception;
catch(my_exception& ex)
{
std::cerr << errorMessages[ex.what()] << std::endl;
}
проблема в том, что этот способ можно использовать только для своих классов исключений,
потому что сообщения стандартных классов исключений не стандартизированы.