Нужно ли использовать xlib "XAllocSizeHints()"?

Xlib имеет функцию под названием XAllocSizeHints выделить XSizeHints структура в куче и установить его на ноль.

XSizeHints *sizehints;
sizehints=XAllocSizeHints();

Однако нужно ли всегда использовать эту функцию? Или я могу сделать это:

XSizeHints sizehints;
memset(&sizehints, 0, sizeof(XSizeHints));

Я хотел бы знать, можно ли избежать XAllocWMHints а также XAllocClassHint тоже.

2 ответа

Решение

Хорошо распределить их в стеке (если, конечно, вы не будете хранить их после возврата текущей функции). В этих функциях alloc нет магии. На самом деле большая часть кода, вероятно, размещает их в стеке.

На самом деле лучше использовать memset, потому что если вы вызываете XAllocSizeHints(), вам нужно явно освободить память с помощью XFree().

Другие вопросы по тегам