cbClsExtra и cbWndExtra

Я хочу более подробную информацию о cbClsExtra и cbWndExtra WNDCLASSEX участники, которые используются в RegisterClassEx winapi.

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

MSDN говорит

система инициализирует байты до нуля.

1) означает ли это, что байты инициализируются нулевым значением или система выделяет нулевые (нет) байты по умолчанию?

2) самый важный вопрос-как использовать эти дополнительные байты (приведите примеры, пожалуйста, с использованием winapi) и как они используются чаще всего?

спасибо заранее.

1 ответов


означает ли это, что байты инициализируются нулевым значением или система по умолчанию выделяет ноль (нет) байтов?

инициализация всегда выполняется по переменным, поэтому это означает, что выделенная дополнительная память равна 0.

самый важный вопрос-как использовать эти дополнительные байты (предоставить примеры, пожалуйста, с использованием winapi) и как они используются наиболее часто?

единственный способ сделать это через GetClassLongPtr и GetWindowLongPtr функции, эти функции достаточно просты, чтобы не нуждаться в примерах (вызов Get* чтобы получить значение, и Set* set установите значение, передав либо класс ATOM или окно HWND).