Ao chamar um centenas de função de vezes, como posso saber quais chamar falhou?

Descrição do problema

Meu programa falha em uma chamada para uma determinada função, CnvtV.O programa provavelmente chama essa função algumas centenas de vezes antes de falhar.Se definir um ponto de interrupção local no CnvtV, o programa pára em cada chamada da função, e não quer que.Não sei o que condições de causam a chamada falhar, portanto, não é possível definir um ponto de interrupção condicional.O que pode fazer?

Solução

Você pode definir um ponto de interrupção na função com o Contagem de visitas campo para um valor tão alto que ele nunca será alcançado.Nesse caso, porque você acha que a função CnvtV é chamado de algumas centenas de vezes, você pode definir Contagem de visitas para 1000 ou mais.Em seguida, execute o programa e aguardar chamada falhe.Quando ele falhar, abra a janela pontos de interrupção e examine a lista de pontos de interrupção.O ponto de interrupção definido em CnvtV aparece, seguido pela contagem de ocorrências e número de iterações restantes:

CnvtV(int) (no condition) when hit count is equal to 1000 (currently 101)

Agora você sabe que a função falhou na chamada 101st.Se você redefinir o ponto de interrupção com uma contagem de ocorrências de 101 e execute novamente o programa, o programa pára na chamada para CnvtV que causou a sua falha.

Consulte também

Conceitos

Perguntas freqüentes sobre o código nativo de depuração.

Outros recursos

Setting Breakpoints

Depurando código nativo