Fórum melhorando as declaraçoes IF #244666
27/07/2004
0
maior = true
else
maior = false
podem ser facilmente convertidades para:
maior = a > b;
eu vi esse exemplo em uma apostila,so que na nao fala nada,alguem poderia me passa outo exemplo de como melhorar as declraçoes IF´S ?
Anicetojunior
Curtir tópico
+ 0Posts
27/07/2004
Beppe
2) Se a expressão que governa o [b:0e7c750ee6]if[/b:0e7c750ee6] for uma lista de [b:0e7c750ee6]and[/b:0e7c750ee6] e/ou [b:0e7c750ee6]or[/b:0e7c750ee6], vc deveria por o mais simples*, para evitar que operações custosas e desnecessárias sejam executadas. Em modo normal, a avaliação é ´curto-circuito´, não avalia o resto da expressão quando ela se mostra verdadeira.
3) Coloque o corpo do [b:0e7c750ee6]then [/b:0e7c750ee6]e [b:0e7c750ee6]else[/b:0e7c750ee6], envolto de [b:0e7c750ee6]begin[/b:0e7c750ee6]/[b:0e7c750ee6]end[/b:0e7c750ee6]. Eu não costumo fazer isso, mas vai lhe ajudar a deixar seu cóigo mais legível.
4) Use [b:0e7c750ee6]case[/b:0e7c750ee6] quando for fazer vários testes na mesma expressão, e ela é de tipo ordinal.
Não é uma lista extensiva, só alguns items que me veio agora. :wink:
* Mais simples = consome menos código
Gostei + 0
27/07/2004
Rômulo Barros
Exemplo:
a := 5;
b := 10;
maior := a > b; // Maior receberá ´False´, pois ´a´ não é maior que ´b´
maior := a < b; // Maior receberá ´True´, pois ´a´ é maior que ´b´
Entendeu agora? :wink: :wink:
Gostei + 0
27/07/2004
Anicetojunior
if query1.recordcount > 0 then
showmessage(´dados encontrados´)
else
showmessage(´dados nao encontrados´);
end;
como eu posso fazer para melhorar isso de acordo do que foi passado anteriormente ?
Gostei + 0
27/07/2004
Lucas Silva
Desta Forma fica bem mais rápido!
if query1.IsEmpty then showmessage(´dados nao encontrados´) else showmessage(´dados encontrados´);
Gostei + 0
27/07/2004
Beppe
Que tipo de melhora pretende alcançar?
Seguir a dica do Lucas é algo que deve fazer, isto deve melhorar a performance. Vc também pode colocar a string numa variável e chamar a função fora do loop, mas isso naum acarretaria em ganho de velocidade.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)