Quando está sem parenteses, é lida, digamos, linearmente, ou seja, "if not Prepared or not SQLIsValid then" é lido como "se EXPRESSAO ou EXPRESSAO". Basta que uma delas seja VERDADEIRA para o compilador aceitar a condição. Nesse caso, é o segundo comportamento.
Quando estiver "if not (Prepared or not SQLIsValid) then", será lido como "se não(EXPRESSAO)", que ficará VERDADEIRO quando a expressão for FALSA, e FALSA quando a expressão for VERDADEIRA.
As expressões lógicas, assim como os números, podem ser "algebrizados" (existe essa palavra ?!). Sendo assim, o uso do parenteses é muito importante pra evitar ambiguidades.
Abraços...
[-----x-----]
Andrei Luís escreveu:
(...) A questão é a seguinte:
Como o compilador interpreta a seguinte linha:
if not Prepared or not SQLIsValid then
Assim:
if not (Prepared or not SQLIsValid) then
Ou assim?
if (not Prepared) or (not SQLIsValid) then
O comportamento que se deseja é o último, mas o código está de fato sem
nenhum parenteses, e o comportamento tem sido estranho. Poderia essa linha
ser interpretada de uma forma ou de outra de acordo com a versão do Delphi?
Existe alguma diretiva de compilação que possa afetar a forma de
interpretação dessa linha?
--
[]s
Andrei
[-----x-----]
=================================
"O que me preocupa não é o grito dos maus. É o silêncio dos bons."
Martin Luther King.
=================================
Welson de Avelar Soares Filho
Analista/Programador Delphi
Gemini Sistemas
<www.geminisistemas.com.br>
Juiz de Fora - Minas Gerais
=================================
---------------------------------
Yahoo! Messenger com voz - Instale agora e faça ligações de graça.
[As partes desta mensagem que não continham texto foram removidas]
--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
<*> Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages
<*> Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED]
Yahoo! Grupos, um serviço oferecido por: | |
|
Links do Yahoo! Grupos
- Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/
- Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!.