मैं afx (एमएफसी) परियोजनाओं में windows.h क्यों शामिल नहीं कर सकता?windows.h और एमएफसी
7
A
उत्तर
11
आमतौर पर, एमएफसी एप्लिकेशन कोड में afx.h
या afxwin.h
(बाद वाला पूर्व शामिल है) शामिल है। windows.h
पहले दो पंक्तियों
#ifndef _WINDOWS_
#define _WINDOWS_
जिसका अर्थ है कि _WINDOWS_
अगर यह शीर्ष लेख शामिल किया गया है परिभाषित हो जाता है। Afx.h
afxver_.h
भी शामिल है और इस हेडर afxv_w32.h
जो निम्नलिखित कोड शामिल शामिल हैं:, तो
#ifdef _WINDOWS_
#error WINDOWS.H already included. MFC apps must not #include <windows.h>
#endif
...
#include <windows.h>
यदि आप शामिल windows.h
MFC हेडर से पहले आपको यह त्रुटि संकलन समय में, यदि आप उत्पन्न हो जाएगा और, जैसा कि आप देख सकते हैं afxwin.h
शामिल करें आपको windows.h
स्वयं को शामिल करने की आवश्यकता नहीं है - इसे पहले ही afxv_w32.h
द्वारा शामिल किया जाएगा।
2
क्योंकि एमएफसी में आपको इसका उपयोग सीधे नहीं करना चाहिए। AFAIR आपको इसके बजाय afx.h शामिल करना चाहिए, जो बदले में अप्रत्यक्ष रूप से windows.h शामिल है। उचित तरीका।
त्रुटि संदेश क्या है? – fretje