Que significa isso

23/10/2012

0

Principalmente o set e o pipe com sinal de igual, n'ao entendi esse codigo.

public virtual int IDCATEGORIA

{

get { return _idcategoria; }

set { _isChanged |= (_idcategoria != value); _idcategoria = value; }

}
Pjava

Pjava

Responder

Posts

23/10/2012

Tiago

Realmente bem confuso, mas pelo que eu entendi na linha abaixo, ele verifica se o valor que "mudou" não é igual a outro se não for o valor é setado.

set { _isChanged |= (_idcategoria != value); _idcategoria = value; }
Responder

23/10/2012

Moisés Gonçalves

Realmente bem confuso, mas pelo que eu entendi na linha abaixo, ele verifica se o valor que "mudou" não é igual a outro se não for o valor é setado.

set { _isChanged |= (_idcategoria != value); _idcategoria = value; }


Com o perdão da palavra: não tem nada a ver.

O operador |= é conhecido como "OR assignment", ou "atribuição ou".

imagine o seguinte:

bool a = false;
bool b = true;

b |= a;

Equivale a escrever:

b = b | a;

Em outras palavras, b "é igual a" b ou a.

Trazendo para o caso de uso em questão, o field _isChanged será modificado antes que a categoria seja definida.
Neste caso, as expressões "categoria foi modificada" e "o identificador da categoria já existente é diferente do valor" serão testadas em com um operador "OU", o resultado desta operação de comparação resultará no valor final do field _isChanged.

_isChanged = _isChanged | (_idcategoria != value);
Responder

23/10/2012

Tiago

Ah Moisés eu acabei confundindo mesmo, obrigado por consertar.
Responder

01/11/2012

Joel Rodrigues

PJava, essa questão ficou clara? Podemos encerrar o tópico?
Responder

02/03/2013

Joel Rodrigues

Considerando as respostas que foram dadas, bastante esclarecedoras, estou marcando este tópico como concluído.
Abraço a todos.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar