_6elemento Posted October 18, 2008 Share Posted October 18, 2008 Alguem me sabe dizer porque é que dois tipos valor definidos em C# nunca poderão ser compatíveis entre si? Link to comment Share on other sites More sharing options...
Green Hawk Posted October 18, 2008 Share Posted October 18, 2008 Alguem me sabe dizer porque é que dois tipos valor definidos em C# nunca poderão ser compatíveis entre si?Explica lá isso melhor, e se poderes dar exemplos de tipos, melhor.... Link to comment Share on other sites More sharing options...
Revenge Posted October 18, 2008 Share Posted October 18, 2008 Também não percebi bem o que ele quis dizer...Estás a perguntar a razão de por exemplo um Int não ser compatível com um Double? Link to comment Share on other sites More sharing options...
DAGC Posted October 18, 2008 Share Posted October 18, 2008 Não percebi a tua dúvida.O meu C# já está um pouco enferrujado... mas... Link to comment Share on other sites More sharing options...
_6elemento Posted October 18, 2008 Author Share Posted October 18, 2008 Alguem me sabe dizer porque é que dois tipos valor definidos em C# nunca poderão ser compatíveis entre si?Explica lá isso melhor, e se poderes dar exemplos de tipos, melhor....Por exemplo tinhas 2 tipos valor Struct exemplo1{//qualquer coisa}Struct exemplo2{//qualquer coisa }estes tipos não compativeis mas não sei pk. Link to comment Share on other sites More sharing options...
{zzz} Posted October 18, 2008 Share Posted October 18, 2008 não é muito comum usar struct em C#usa antes classes, e implementas o metodo Equals() ou CompareTo() Link to comment Share on other sites More sharing options...
blueomega Posted October 18, 2008 Share Posted October 18, 2008 (edited) em c# tens 2 tipos de cast de referencia de objectos, upcast e downcasttens tambem o operador "as" para tipos que são compativeis, alem de ser mais rapido que o referido em cima, mas claro so da se for mesmo compativelalgo do generoclass a = new class();class2 b = a as class2;mas não sei se é isto que queres, alem de a minha experiencia em c# se resumir a umas quantas horas pra uma cadeira Edited October 18, 2008 by blueomega Link to comment Share on other sites More sharing options...
Green Hawk Posted October 18, 2008 Share Posted October 18, 2008 (edited) Alguem me sabe dizer porque é que dois tipos valor definidos em C# nunca poderão ser compatíveis entre si?Explica lá isso melhor, e se poderes dar exemplos de tipos, melhor....Por exemplo tinhas 2 tipos valor Struct exemplo1{//qualquer coisa}Struct exemplo2{//qualquer coisa }estes tipos não compativeis mas não sei pk.Claro... Estruturas, apesar de poderem ser constituídas pelos mesmos dados, nao são compativeis! No maximo deves poder forçar o cast de uma para a outra... Mas agora não me lembro!Mas de kk maneira, o c# é orientado a objectos, logo faz antes uma classe.. e suponho que o que queres fazer é uma class que estenda outra.. Do genero class Pai{} class Filho extends Pai{}Para tipo primitivos,int, String, char.. , podes fazer cast usando o ConvertTo.paraoquequeres() Edited October 18, 2008 by Green Hawk Link to comment Share on other sites More sharing options...
_6elemento Posted October 18, 2008 Author Share Posted October 18, 2008 struct define tipos valor e class define tipos referencia,o k eu acho e k , nos tipos valor o equals() compara referencia e nao valor ,e por isso 2 tipos valor nunca podem ser compativeis.alg concorda ou discorda do k eu disse? Link to comment Share on other sites More sharing options...
Donovan Posted October 18, 2008 Share Posted October 18, 2008 Dá-me um exemplo prático daquilo que queres fazer. Assim não sei bem como te ajudar Link to comment Share on other sites More sharing options...
Green Hawk Posted October 18, 2008 Share Posted October 18, 2008 struct define tipos valor e class define tipos referencia,o k eu acho e k , nos tipos valor o equals() compara referencia e nao valor ,e por isso 2 tipos valor nunca podem ser compativeis.alg concorda ou discorda do k eu disse?Isso que dizes, é verdade para as classes! Para as estruturas como nunca uso, não tenho a certeza! Para compares estruturas podes sempre fazer um metodo!Tipo, recebe 2 estruturas e compara campo a campo! Link to comment Share on other sites More sharing options...
Donovan Posted October 18, 2008 Share Posted October 18, 2008 Lembrei-me agora que há uns tempos, publiquei no meu blog um artigo sobre Value Types vs Reference Types. Se quiserem ver, venham aqui ;) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now