Как управлять обработкой ошибок, таких как getlasterror? - PullRequest
0 голосов
/ 16 июня 2020

Есть разработанная мной библиотека. (Шаблон наблюдателя и boost.signals2) Вкратце logi c: Многие модули C ++ регистрируются с уникальным идентификатором. подписчик s1 (услуга, "unique_id") Модулей регистров много. У них уникальный идентификатор. С помощью своего интерфейса Publisher я получаю данные от пользователя и отправляю их всем или одному из этих модулей. Пока проблем нет. Есть несколько ситуаций. Я заглянул в свою библиотеку. В некоторых случаях трансляция не может быть произведена и возникает ошибка. Я должен сообщить об этом пользователю интерфейса издателя.

publisher publisher_one;
std::int32_t ret_val ;
ret_val =  publisher_one.publish_notifications(oss.str());
if(ret_val == 0){
    std::cout<<"Succsess" << "\n";

}
else{
    std::cout <<"Fail" << "\n";
         /*todo
        * Control error
    */ 
}
publish_notifications there are some if check for error status

Я независимая библиотека и не могу получить возвращаемое значение обратного перечисления. Какое лучшее решение? Есть ли для этого пример? Насколько мне известно, на стороне windows есть решение вроде getlasterror. Могу ли я применить это к стороне linux? Спасибо

...