Ir para conteúdo
Faça parte da equipe! (2024) ×

java Usando Assert em LUA


HoruS*
 Compartilhar

Posts Recomendados

Antes de começar a ler este tutorial, recomendo que use os códigos em lua para certificar-se o que cada linha representa

 

Assert - Só para ter certeza

 

Definição:

É necessário se cadastrar para acessar o conteúdo.

 

Questões um erro quando o valor de seu argumento V é falso (ie, nil ou false);

caso contrário, retorna todos os seus argumentos. mensagem é uma mensagem de erro; quando ausente, a mensagem padrão é "assertion failed"!

 

Vejamos alguns exemplos;

Nós vamos apenas tentar algumas coisas e ver como eles vão correr.

 

Algo Verdadeiro:

Vamos tentar o óbvio, basta ligar para afirmar com verdade.

 

É necessário se cadastrar para acessar o conteúdo.

 

Como você pode ver, nada acontece e a função apenas retorna verdadeiro.

 

 

 

 

Algo Falso:

 

Vamos ver o que acontece se executarmos o código a seguir com a falsa:

 

É necessário se cadastrar para acessar o conteúdo.

 

O nosso primeiro erro intencional. Lua é tão emocionante!

 

Para outros valores de falsa

Com a exceção de falsa , apenas um outro valor, nulo , avaliada como falsa.

É necessário se cadastrar para acessar o conteúdo.

 

 

 

Enviar uma mensagem;

De acordo com a especificação, se dermos valer um segundo argumento, ele será definido como a mensagem de erro.

É necessário se cadastrar para acessar o conteúdo.

Isto é extremamente útil quando rastreando que afirmam está travando o seu programa.

 

 

 

 

Para alguns valores de verdade

Mas além de apenas o verdadeiro e o falso, afirmam vai fingir que quaisquer outros tipos diferentes de nil também são verdadeiras . Vamos checar

É necessário se cadastrar para acessar o conteúdo.

 

Valor de retorno

Quando assert for bem-sucedido, o que ele voltar? Vamos explorar

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Encontrados na natureza:

Para finalizar, vamos olhar para alguns mundo real usa de assert .

 

Testar suas funções

Suponha-se que durante a concepção do seu programa, você precisa ter certeza de que seu programa está correto. Uma maneira de fazer isso é afirmar que a função irá retornar alguns valores pré-definidos.

 

Tomemos por exemplo o problema de mostrar que \ sum_ {i = 1} ^ n = \ frac {n ^ 2 + n} {2} . Nós pode polvilhar em alguns afirma ter certeza de que o nosso código é, pelo menos, "visivelmente" correto.

 

O que digitar:

É necessário se cadastrar para acessar o conteúdo.

 

Opa, parece que o caso 1 falhou. Tomar um olhar mais atento ao código, torna-se óbvio que é o problema. (Você consegue identificar o erro Dica: olhar para a fórmula matemática)

 

Protegendo contra nil valores

Um dos outros "idiomas" comuns da Lua é usar assert para "guarda" contra os valores nulos. Mais especificamente, suponha que queremos ler um arquivo que não existe e nós queremos travar o programa mais cedo ou mais depois de desperdiçar mais recursos. Uma maneira de fazer isso é através de

 

O que digitar:

É necessário se cadastrar para acessar o conteúdo.

 

Se você é diligente, você pode ter notado também que a mensagem de erro informa ao invés do mais genérico "afirmação que falhou!" mensagem. Não se preocupe, executando o seguinte código venha a aliviar suas preocupações. [string "stdin"]:1: fake_file.lua: No such file or directory

 

O que digitar:

É necessário se cadastrar para acessar o conteúdo.

 

Considerando que a convenção em outros idiomas é para lançar uma exceção, para Lua, você acabou de retornar nulo e, opcionalmente, jogar em uma mensagem de erro.

5hTkq8b.png

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.