TOC

This article has been localized into Portuguese by the community.

Debugging:

Breakpoints avançados

Em um capítulo anterior, definimos o primeiro ponto de interrupção e foi bom. No entanto, há mais pontos de interrupção do que isso, pelo menos se você estiver usando o Visual Studio. Infelizmente, parece que a Microsoft desativou esses recursos extras de depuração em algumas de suas versões Express, mas não se preocupe: eles certamente são bons de se ter, mas você pode sobreviver sem eles. No entanto, para aqueles com acesso ao Visual Studio, aqui estão os recursos relacionados ao ponto de interrupção mais interessantes. Você obtém acesso a eles definindo um ponto de interrupção, clicando com o botão direito do mouse e selecionando a função desejada.

Condição

Esta opção permite que você especifique uma condição que deve ser verdadeira ou alterada, para que o ponto de interrupção seja atingido. Isso pode ser muito útil quando se lida com código mais avançado, em que você deseja que a execução pare somente em determinadas circunstâncias. Por exemplo, você pode ter um loop que repete um monte de tempo antes que o código relevante seja atingido - em uma situação como essa, você poderia simplesmente colocar um ponto de interrupção e, em seguida, configurar uma condição apropriada. Aqui está um exemplo bastante chato, que irá mostrar como funciona:

static void Main(string[] args)
{
    for(int i = 0; i < 10; i++)
        Console.WriteLine("i is " + i);
}

Defina um ponto de interrupção na linha em que fazemos a saída para o console. Agora execute o aplicativo - o ponto de interrupção é acionado sempre que o loop for repetido. Mas talvez não seja isso que queremos. Talvez nós só queremos que ele seja atingido quando eu for igual a 4 (a 5ª iteração). Faça isso definindo uma condição simples como esta:

i == 4

O ponto de interrupção agora ficará um pouco mais branco, e quando você executar o aplicativo, ele só será quebrado quando a variável i for igual a 4. Você também pode usar a opção "mudou" para instruir o depurador a parar a execução apenas se o resultado da declaração acima foi alterado, por exemplo, de falso para verdadeiro.

Contagem de ocorrências

Com esse diálogo, você pode definir uma condição alternativa, com base na quantidade de vezes que o ponto de interrupção foi atingido. Por exemplo, você pode decidir que seu ponto de interrupção não deve interromper a execução até que seja atingido por um certo número de vezes. Existem várias opções para controlar isso, dependendo do que você precisa, e durante o tempo de depuração, você pode marcar essa caixa de diálogo para ver quantas vezes o ponto de interrupção foi atingido até o momento.

Quando bateu ...

Usando este diálogo, você pode definir um comportamento alternativo para quando seu ponto de interrupção for atingido. Isso pode ser útil em muitas situações, nas quais você não deseja que a execução pare, mas simplesmente imprima uma mensagem de status ou uma macro ativada. Ele permite que você defina uma mensagem personalizada que será impressa, onde você pode incluir todos os tipos de informações sobre a execução. Para usuários avançados, a opção de obter uma macro específica executada quando um ponto de interrupção é atingido também será útil.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!