2
respostas

Preciso de ajuda com uma linha do codigo que fiquei com duvida

if(!(Tbc_Aplicacoes.SelectedTab == null))

No codigo acima nao entedi o do porque precisa colocar a Codição entre ()

2 respostas

É para fazer o evaluation do que está dentro de (), no caso vai ser um booleano. Primeiro ele vai executar (Tbc_Aplicacoes.SelectedTab == null) -> (false) -> !(false) -> if (true)

O paranteses é necessário devido a precedência dos operadores. Se você remove-los o compilador vai tentar resolver primeiro o trecho abaixo:

!Tbc_Aplicacoes.SelectedTab

Mas isso não é possível, negação só pode ser aplicada pra resultados booleanos. Por isso a expressão lógica com um resultado booleano foi colocada entre os parênteses:

(Tbc_Aplicacoes.SelectedTab == null)

Agora, estando parênteses, o trecho acima será executado primeor e retornará true ou false e será invertido pelo operador de negação !.