Articles of tratamento de exceções

Exceção de captura: dividir por zero

O código a seguir não captura uma exceção, quando tento dividir por 0. Preciso lançar uma exceção ou o computador lança automaticamente uma em tempo de execução? int i = 0; cin >> i; // what if someone enters zero? try { i = 5/i; } catch (std::logic_error e) { cerr << e.what(); }

captura exceção que é lançada em segmento diferente

Um dos meu método ( Method1 ) gera um novo segmento. Esse thread executa um método ( Method2 ) e durante a execução uma exceção é lançada. Eu preciso obter essa informação de exceção no método de chamada ( Method1 ) Existe alguma maneira eu posso pegar essa exceção no Method1 que é lançada no […]

Captura de exceções de violação de access?

Exemplo int *ptr; *ptr = 1000; posso pegar exceção de violação de access à memory usando o padrão C ++ sem usar qualquer Microsoft específico.

Existe uma razão Image.FromFile lança um OutOfMemoryException para um formato de imagem inválido?

Eu estou escrevendo código que captura este OutOfMemoryException e lança uma exceção nova e mais intuitiva: /// … /// The file does not have a valid image format. public static Image OpenImage( string filename ) { try { return Image.FromFile( filename ); } catch( OutOfMemoryException ex ) { throw new FormatException( “The file does not […]

É abusivo usar IDisposable e “using” como um meio para obter “comportamentos com escopo definido” para segurança de exceção?

Algo que eu costumava usar em C ++ era permitir que uma class A manipulasse uma condição de input e saída de estado para outra class B , através do construtor e destruidor A, para ter certeza de que se algo naquele escopo emitisse uma exceção, então B teria uma estado quando o escopo foi […]

Quando devo realmente usar noexcept?

A palavra-chave noexcept pode ser apropriadamente aplicada a muitas assinaturas de function, mas não tenho certeza de quando devo considerar usá-la na prática. Com base no que li até agora, a adição de última hora de noexcept parece abordar algumas questões importantes que surgem quando os construtores movem. No entanto, ainda não consegui fornecer respostas […]

Como usar o try catch para o tratamento de exceções é a melhor prática

enquanto mantenho o código do meu colega até de alguém que afirma ser um desenvolvedor sênior, geralmente vejo o seguinte código: try { //do something } catch { //Do nothing } ou, às vezes, eles gravam informações de registro em log para registrar arquivos como seguir. try { //do some work } catch(Exception exception) { […]

UnauthorizedAccessException não pode resolver falha Directory.GetFiles

O método Directory.GetFiles falha no primeiro encontro com uma pasta para a qual não possui direitos de access. O método lança um UnauthorizedAccessException (que pode ser capturado), mas no momento em que isso é feito, o método já falhou / terminou. O código que estou usando está listado abaixo: try { // looks in stated […]

Captura uma exceção lançada por um método asynchronous

Usando o CTP asynchronous da Microsoft para .NET, é possível detectar uma exceção lançada por um método asynchronous no método de chamada? public async void Foo() { var x = await DoSomethingAsync(); /* Handle the result, but sometimes an exception might be thrown. For example, DoSomethingAsync gets data from the network and the data is […]

Manipulador de exceções globais do WPF

Às vezes, sob circunstâncias não reproduzíveis, meu aplicativo WPF falha sem qualquer mensagem. O aplicativo simplesmente fecha instantaneamente. Onde é o melhor lugar para implementar o bloco global Try / Catch. Pelo menos eu tenho que implementar um messagebox com: “Desculpe pelo inconveniente …”