Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

A resposta não está correta.

" Roupa roupa1= new Roupa(); roupa1.fabricante=”Moda Jeans”; roupa1.valor = 63.0;

Roupa roupa2 = roupa1; roupa2.valor = roupa2.valor + 1000;

Console.WriteLine(roupa1.valor); Console.ReadLine(); "

a variavel 'roupa2' é atribuido os mesmos valores de roupa1, em seguida acontece a soma de roupa2.valor, mas o que é impresso é o valor da 'roupa1', que em nenhum momento foi alterado.]

A atribuição de igualdade foi feito a roupa2, e roupa1, é independente da roupa2.

o valor a ser impresso é: 63

3 respostas

Bom dia Bernardo,

Ao fazer a operação

Roupa roupa2 = roupa1;

você está passando a referência de onde estão armazenados os valores de roupa1, ou seja, roupa2 está apontando para o mesmo objeto que roupa1. É necessário criar um novo objeto roupa2:

Roupa roupa2 = new Roupa();

Não cheguei a testar aqui, depois dê um feedback se resolveu.

solução!

Isso mesmo, algumas aulas a frente, vi que quando faz essa igualdade de um objeto com o outro, os dois passam a ter o mesmo endereçamento, com isso compartilham as informações.

Obrigado.

Show!

Não esqueça de marcar o fórum como solucionado.

Um abraço.