Я хотел бы инкапсулировать существующий массив данных (созданный Python Numpy Lib) в массив, подобный объекту на языке D2... без необходимости копировать данные массива... Я уже использую Python cTypes Lib для вызова DLL, передача длин массивов и указателей данных. Но я все еще копирую данные массива, чтобы поместить их в собственный массив D2. Похоже, что можно не копировать данные массива, используя класс std.range библиотеки phobos. Этот шаблон инкапсуляции массива был бы довольно распространенным... Я новичок как в D, так и в этой абстракции класса диапазона. ... Было бы здорово иметь пример кода D2 о том, как это будет сделано.
Как инкапсулировать существующий массив с помощью phobos std.range D2
Ответы (1)
Вы можете разрезать указатель. Эта операция вернет массив D:
int *p = /*some initializer*/;
int[] a = p[0..N];
person
Maksim Zholudev
schedule
15.01.2012