У меня есть структура:
struct A
{
int a;
double c;
double *array;
};
main()
{
A *str = new A[50];
for(int i=0;i<50;i++)
{
str[i].array = new double[5];
str[i].array[0] = 50;
}
// Здесь мне необходимо создать буфер и выделить в нем память под массив
// и копировать в буфер свой массив со значениями;
Buffer BufA = (...,..., 50 * sizeof(A),str);
//Далее я буфер передаю в файл OpenCL;
//Если я инициализирую обычные переменные в массиве структур, то их я могу использовать в файле. А вот значения в динамическом массиве он не видит. Видимо я не полностью выделяю память, под динамический массив еще надо.
}
Можете подсказать пожалуйста, как именно надо записать память под динамический массив в общую выделяемую память? Вряд ли это специфика OpenCl, потому что я вижу значения обычных переменных. Фишка в динамическом массиве.
P.s. в принципе, я могу передать отдельно свой массив в буфер и тогда всё будет работать. Но для удобства, хотелось бы сделать это в структуре.
Ну в структуре лежит только адрес массива. Если все массивы одинаковой длины, то так и напишите в структуре double array[5];
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости