• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

soulbe

Tipos valor [duvida]

9 mensagens neste tópico

Olá!

Alguém me sabe explicar porque dois tipos valor não podem ser compatíveis entre si? Por não admitirem relações de herança?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estou a estudar para um exame e aqui num enunciado passado tinha essa pergunta, "Porque é que dois tipos valor definidos em c# nunca poderão ser compatíveis entre si?"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não estou a ver.... o que entendes por compatibilidade ? para ver se me surge alguma ideia..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Por exemplo, a instrução is testa a compatibilidade entre tipos...não sei se ajuda, mas no cenário que disse, a is Xpto, se a não fosse do tipo Xpto ia sempre dar false por não haver derivações possíveis de Xpto.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Segundo me lembro todos os tipos valor derivam de ValueType e tal como disseste são sealed implicitamente.. deve ser por isso possivelmente... não te arranjo outra justificação.. se me lembrar entretanto venho cá colocar..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ainda não percebi a pergunta. Dois tipos podem ser compatíveis entre si, se forem do mesmo tipo por exemplo.

Essa pergunta não está inserida num determinado contexto?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não, coloquei exactamente a pergunta que la está. É sobre a matéria de value types e reference types...segundo que entendi, se um reference type <B> derivar de um reference type <A>, e se testar a compatibilidade, retorna true porque B é A. Já isso não seria possível em value types devido à tal impossibilidade de derivação...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora