Windows API를 처음 살펴보고 WNDCLASSX이 발생하면 왜 cbSize 인 지 궁금해 할 수 없습니다. cbSize에 대한 설명 (MSDN 당) : 이 구조체의 크기 (바이트). 이 멤버를 sizeof (WNDCLASSEX)로 설정합니다. GetClassInfoEx 함수를 호출하기 전에이 멤버를 설정해야합니다. 이것은 그것을 묘사하고 그 목적을 암시하지만, 필자는 그 필요성을 배제하지 않는다.구조체가 자체 크기를 저장하는 이유는 무엇입니까?
제 질문은 이것입니다 : 구조체가 왜 자체 크기를 저장할 필요가 있습니까? 구조체를 처리하는 함수가 sizeof을 사용하여 해당 정보에 액세스하지 않았습니까?
내 추측 : 설득력. 또한 효율면에서 sizeof를 한 번 실행하고 저장 한 다음 계속해서 sizeof를 실행하는 것보다 훨씬 효율적입니다. –
'do_something_with ((struct foo *) i_am_a_bar_ptr); –
버전 지원 및 기계 플랫폼은 두 가지 공통된 이유가 있습니다. – WhozCraig