У меня возникла небольшая проблема со ссылкой на члены внешней структуры из вложенной структуры. Когда я пытаюсь установить для x и y ширину и высоту, появляется ошибка «нестатический элемент должен быть относительно статического объекта», вот код:
Код: Выделить всё
const int width = 1280, height = 720;
struct MandelbrotBase
{
int width = ::width, height = ::height;
...
struct
{
int x = width / 2;
int y = height / 2;
} pos;
} mb;
__global__ void generate_mandelbrot(unsigned int* colors, MandelbrotBase mb)
{
...
}
Разве это не большая проблема, поскольку вместо этого я могу ссылаться на глобальные ::width и ::heigth или другие методы для инициализации. Но есть ли возможность сделать это просто внутри? Использование конструктора-члена или функции не является вариантом, по крайней мере, не является предпочтительным вариантом, поскольку я использую его для передачи информации в функции ядра cuda, поэтому я хочу, чтобы это было очень просто.
Подробнее здесь:
https://stackoverflow.com/questions/787 ... static-obj