Перенос полей как есть в C#
Поверхностная копия - когда в новый объект по очереди записывают текущие значения полей исходника. Для чисел и строк в полях получается отдельный экземпляр с тем же содержимым на момент копирования:
Badge CopyBadge(Badge source)
{
Badge copy = new Badge();
copy.Level = source.Level;
copy.Code = source.Code;
return copy;
}
Badge original = new Badge();
original.Level = 3;
original.Code = "A1";
Badge duplicate = CopyBadge(original);
duplicate.Level = 5;
Console.WriteLine(original.Level);
Console.WriteLine(duplicate.Level);
class Badge
{
public int Level;
public string Code = "";
}
Сделайте класс Stamp с полями rank и label.
Получите копию штампа, измените ранг только у копии и выведите оба ранга.