Я не уверен, что это возможно. Из всех примеров, которые я видел, массив определен в скобках { }
, но в моем случае это не так много.C++ Инициализация статического массива
То, что я пытаюсь сделать, это сохранить это в моей функции рисования, чтобы нарисовать несколько кругов, которые медленно увеличиваются в размере.
То, что я получаю с помощью отладчика, является то, что статический массив сбрасывается каждый раз, когда цикл попадает.
Я также пытался что-то вроде static Rect rc[5] = {}
void fun_called_every_five_seconds() {
static Rect rc[5];
for (int i = 0; i < count; i++) {
int x = rand()%400;
int y = rand()%400;
int r = rand()%200;
rc[i] = Rect (x,y,r,r);
}
rc[0].X += 50;
// I check value of rc[0].X right here
}
В каком контексте находится код? Являются ли как код, так и «статический» массив внутри функции или являются «статическими» в области пространства имен? Пожалуйста, дайте [MCVE] – KABoissonneault
@KABoissonneault, добавив пример. От таймера эта функция вызывается каждые 5 секунд. –
Цикл 'for' будет выполняться каждый раз, когда вы вызываете функцию. –