Como pegar saída () no módulo incorporado C ++ de código python?
Pergunta
Estou a incorporação de uma biblioteca C ++ (ligação feita com SIP) no meu aplicativo python. Sob certas circonstances (casos de erro), esta biblioteca usa exit (), que faz com que todo o meu pedido para sair. Existe uma maneira de capturar este evento, ou que eu preciso para modificar a biblioteca para casos de erro alça de forma diferente?
Muito obrigado,
Solução
Você deve modificar a fonte da biblioteca. Não existe um "tratamento de exceção" em C e exit()
não retorna para o código de chamada em qualquer circunstância.
Outras dicas
Você pode substituir a biblioteca ligação com LD_LIBRARY_PATH e fazer a sua própria função de saída. Funciona bem.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow