LINUX.ORG.RU

Ответ на: комментарий от unfo

или сделать что-то вроде этого:
int *a = 0;
int b[12];
a = b;

Int64 ★★★
() автор топика
Ответ на: комментарий от Int64

Конечно, в куче.

Тебе нужно либо указать размер массива при объявлении, либо позже выделять память из кучи.

unfo ★★★★★
()
Ответ на: комментарий от Int64

Можно пользовать std::vector, это динамический массив, размер которого указывать не нужно, просто добавлять и удалять элементы по мере надобности.

unfo ★★★★★
()
Ответ на: комментарий от unfo

мне не нужен динамический массив, мне просто нужно отложить инициализацию, я уже разобрался, спасибо :)

Int64 ★★★
() автор топика
Ответ на: комментарий от Int64

Не забудте в `man alloca' прочитать секции NOTES и BUGS.

Лучше выделять память в куче, std::vector самый правильный вариант.
Если производительность критична, вместо alloca лучше использовать что-то вроде stlsoft::auto_buffer.

gv
()
int *a = 0;
...

a = new int[size];
//a usage...
...
delete[] a;
deadline
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.