Вход | Регистрация

1С:Предприятие ::

Метки: 

Копирование Массива

Я
   zhukovia
 
11.04.14 - 11:56
Есть задача скопировать один массив в другой, но не так как делает 1С (путем копирования ссылки), а создать Независимую копию и без перебора в цикле элементов. Отсюда вопрос. Пойдет ли такая конструкция?
<CODE>
Массив = Новый Массив();
Массив.Добавить(1);
Массив.Добавить(2);
фМвссив = Новый ФиксированныйМассив(Массив);
Массив2 = Новый Массив(фМассив);
</CODE>
 
  Рекламное место пустует
   Wobland
 
1 - 11.04.14 - 11:57
ща, минуту, кофе допью и буду проводить испытания
   Господин ПЖ
 
2 - 11.04.14 - 11:57
передать в функцию по значению
   Ненавижу 1С
 
3 - 11.04.14 - 12:00
(0) в последнем операторе ошибка
   zhukovia
 
4 - 11.04.14 - 12:00
(2) А это как?
   zhukovia
 
5 - 11.04.14 - 12:00
(3) Орфографическая?
   Ненавижу 1С
 
6 - 11.04.14 - 12:01
(2) не взлетит
(5) смысловая, конструктор массива принимает в качестве аргументов только целые числа
   zhukovia
 
7 - 11.04.14 - 12:02
(6) У меня работает. Может это из за 8.3? Забыл про это написать.
   Господин ПЖ
 
8 - 11.04.14 - 12:02
(4) функция блабла(Знач массив)
   zhukovia
 
9 - 11.04.14 - 12:03
Вот так у меня
Массив = Новый Массив();
Массив.Добавить(1);
Массив.Добавить(2);
фМассив = Новый ФиксированныйМассив(Массив);
Массив2 = Новый Массив(фМассив);
   zhukovia
 
10 - 11.04.14 - 12:04
(8) А как это поможет копию создать? Мне не передать а скопировать надо. В текущей Прцедуре.
 
  Рекламное место пустует
   zhukovia
 
11 - 11.04.14 - 12:06
(9) Вроде работает. Вот только как проверить не ссылка ли копируется и не становится ли исходный массив неизменяемым?
   Ненавижу 1С
 
12 - 11.04.14 - 12:06
(10) никак не поможет
(10) можно еще в список значений загрузить, а потом выгрузить

ВыгрузитьЗначения()
Возвращаемое значение:

Тип: Массив.

Описание:

Создает массив и копирует в него значения элементов списка значений.

Доступность
   Господин ПЖ
 
13 - 11.04.14 - 12:06
(10) ну если прямо копия тогда конечно нет
   Господин ПЖ
 
14 - 11.04.14 - 12:07
(11) удали элемент в одном, проверь кол-во в другом
   zhukovia
 
15 - 11.04.14 - 12:07
(12) Выгрузить-Загрузить мне кажется по времени дольше будет чем перебор.
   Ненавижу 1С
 
16 - 11.04.14 - 12:07
(11) наверное попробовать изменить элемент массива и проверить

Массив[0] = 100;
Если Массив[0]=Массив2[0] Тогда
  //ссылаются на одно и тоже

Иначе
  //разные объекты
   zhukovia
 
17 - 11.04.14 - 12:07
(14) Я изменял и вроде все хорошо.
   Господин ПЖ
 
18 - 11.04.14 - 12:09
(17) ну тогда радуйся
   zhukovia
 
19 - 11.04.14 - 12:10
(16) А это разве не значения сравниваться будут?
   zhukovia
 
20 - 11.04.14 - 12:14
(18) Т.е. получается такая недокументированная особенность. Так гораздо быстрее большие массивы копировать.


Список тем форума
Рекламное место пустует   Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует