Описание тега shallow-copy
Неглубокая копия объекта - это дубликат, который может не быть полностью независимым от оригинала в том смысле, что любые ссылки / указатели, которые он содержит на другие объекты, относятся к тем же объектам, что и оригинал. Используйте этот тег для вопросов, касающихся реализации или использования методов неглубокого копирования.
2
ответа
В чем разница между этими двумя кодами?
Я недавно начал писать в Python 2.7. Я молекулярный биолог. Я пишу сценарий, который включает в себя создание списков, как этот: mylist = [[0, 4, 6, 1], 102] Эти списки увеличиваются путем добавления элемента в mylist[0] и суммирования значения в my…
06 ноя '13 в 21:28
3
ответа
Почему Object.assign работает с массивом?
Итак, я читал статью, чтобы клонировать объект и массив. Все они упоминали, что Object.assign() может использоваться для копирования объекта, но никто не упомянул, что Object.assign() также будет работать для поверхностного копирования массива. Кто-…
16 ноя '18 в 16:49
2
ответа
Скопируйте массивы примитивных типов с помощью System.arrayCopy, это мелкий или глубокий?
Я понимаю как System.arrayCopy() создает мелкую копию Object[] массивы, которые передаются ему. Но я не понимаю, как это работает на массивах примитивных типов, таких как int[] или же byte[], Нет ссылок для копирования. В этом случае не должно быть …
27 фев '17 в 14:37
2
ответа
Как я могу правильно скопировать набор объектов, не ссылаясь на оригиналы или дублируя те, на которые ссылаются несколько раз?
У меня есть GameState объект. Он содержит такие вещи, как игроки, руки игроков и карты в них, состояние и расположение ресурсов игроков и так далее. Почти все связано, по крайней мере, с одной другой вещью - карты знают, в какой руке они находятся, …
19 июл '14 в 03:32
3
ответа
Мелкая копия хешсета
Какой лучший способ сделать это. HashSet<reference_type> set2 = new HashSet<reference_type>(); Пройдете через сет с таким foreach? foreach (var n in set) set2.Add(n); Или использовать что-то вроде унисон, как это? chunk2 = chunk.UnionWit…
10 мар '12 в 17:02
1
ответ
Получает ли анонимный класс поверхностную или полную копию окончательных переменных в Java?
Я прочитал введите описание ссылки здесь и увидите, что анонимный класс получает копии контекста исполнения переменных внешнего класса. Нет, где я могу найти, если анонимный класс получает поверхностную копию или полную копию окончательных переменны…
06 мар '16 в 16:40
9
ответов
Когда я должен передать или вернуть структуру по значению?
Структура может быть передана / возвращена по значению или передана / возвращена по ссылке (через указатель) в C. По общему мнению, первое может быть применено к небольшим структурам без наказания в большинстве случаев. См. Есть ли случаи, когда воз…
22 июн '15 в 13:05
1
ответ
Метод клонирования в списках в Java - это мелкое копирование или глубокое копирование?
Как я понимаю, когда я использую метод клонирования, указанный для List, или если я использую конструктор копирования для списка, мне нужно получить поверхностную копию списка: ArrayList<String> a = new ArrayList<>(); a.add(new String("d…
28 янв '15 в 15:06
2
ответа
Изменение элементов списка в мелкой копии
У меня есть один вопрос по списку мелкой копии. В обоих примерах я изменил один элемент списка, но в примере 1 список b изменили, а в примере 2 список d не изменился. Я в замешательстве, так как в обоих примерах я изменил элемент списка. Какая разни…
10 янв '18 в 00:54
2
ответа
Кажется, что нарезка массива делает глубокую копию?
Предполагается, что нарезка в python делает мелкую копию. Тем не менее, когда я запускаю следующее: cur = [[0] * (2) for _ in xrange(2)] cur2 = [row[:] for row in cur] cur2[0][0] = "foo" print(cur) print(cur2) Я получил: [[0, 0], [0, 0]] # cur [['fo…
05 авг '18 в 18:46
2
ответа
Как я могу поделиться элементами между ArrayList и TreeSet в Java?
Я хочу изменить элементы ArrayList и TreeSet одновременно. Ex. Когда я изменяю элемент из TreeSet, соответствующий элемент в Arraylist также изменяется.
11 июл '11 в 16:59
3
ответа
C Путаница с мелкой копией
Редактировать: Исправлена ошибка, которая упоминалась в комментариях, и проблема все еще существует, так что этот вопрос на самом деле не является дубликатом - только то, что мои навыки программирования на C не очень хороши на данный момент, решен…
25 окт '16 в 11:34
5
ответов
Глубокая и мелкая копия Java
Я готовлюсь к экзамену по Java, и то, что я узнал, практически отличается от того, что преподается в теории. Ниже приведен код: StringBuilder num3[]= new StringBuilder[2]; num3[0]= new StringBuilder("Pine"); num3[1]= new StringBuilder("Oak"); String…
12 ноя '13 в 09:51
0
ответов
Мелкая копия пользовательского объекта C#
Я работаю над кодом, написанным на C#. В этом приложении у меня есть пользовательская коллекция, определенная следующим образом: public class ResultList<T> : IEnumerable<T> { public List<T> Results { get; set; } public decimal Cent…
17 июн '12 в 17:04
3
ответа
dup дает разные результаты, когда хеш равен одному или двум измерениям
dup это мелкая копия, поэтому при этом: h = {one: {a:'a', b: 'b'}} h_copy = h.dup h_copy[:one][:b] = 'new b' сейчас h а также h_copy такой же: {:one=>{:a=>"a", :b=>"new b"}}Да, это правильно. Но когда h это одномерный хеш: h = {a:'a', b: 'b…
19 ноя '12 в 05:48
2
ответа
Когда я буду использовать мелкую копию?
Я понимаю, в чем разница между мелкой и глубокой копией, но я действительно не понимаю, в каких ситуациях предпочтительна бы мелкая копия. Если я не ошибаюсь, мелкая копия создает новую копию типов значений и просто копирует адрес ссылочных типов, ч…
13 апр '14 в 14:41
3
ответа
Мелкая копия 2 ArrayList в 1 в Java
ArrayList<String> myString = new ArrayList<String>(); myString.add("string_1"); myString.add("string_2"); ArrayList<String> yourString = new ArrayList<String>(); yourString.add("string_11"); yourString.add("string_12"); Array…
16 мар '16 в 20:36
1
ответ
Python - Чем отличается добавление в список и изменение элемента в списке в случае мелкой копии
Итак, у меня возникли сомнения относительно различий между операциями добавления и изменения в списках в отношении мелкой копии. Ниже вывод: ***After Shallow Copy*** a = [[1, 2, 3], ['a', 'b', 'c'], [True, False]] b = [[1, 2, 3], ['a', 'b', 'c'], [T…
05 июн '18 в 09:01
4
ответа
Создание мелкой копии структур в C#
Я попытался найти свой ответ и нашел их в отношении C, а не C#, поэтому решил опубликовать его. Мой вопрос может быть тривиальным здесь. Согласно моему пониманию (простыми словами) После завершения копирования Shallow Copy -> основной и скопированны…
02 авг '13 в 09:06
1
ответ
Почему MemoryCache использует мелкую копию?
Мне просто интересно, почему MemeoyCache использует мелкую копию для хранения данных кэша? любое предложение? Если memoryCache использовать только ссылку на данные, то какой тип хранилища данных в CacheMemory. public static void TestmemoryCacheCloni…
23 янв '17 в 12:15