मैं अपनी .cpp फ़ाइल में 2 प्लेटफ़ॉर्म-विशिष्ट stdafx.h फ़ाइलों को शामिल करने का प्रयास कर रहा हूं, लेकिन जब मैं इसे #ifdef करने का प्रयास करता हूं तो संकलक नाखुश है।मैं stifafx.h #ifdef करने में असमर्थ क्यों हूं?
#ifdef _WIN32
#include "stdafx.h"
#elif _MAC
#include "MAC/stdafx.h"
#endif
आपको आश्चर्य हो सकता है कि मैं मैक कोड में stdafx.h का उपयोग क्यों कर रहा हूं, लेकिन इस समय यह महत्वपूर्ण नहीं है :)।
जब मैं विंडोज़ पर कोड संकलित करने का प्रयास करता हूं, तो मुझे लगता है: घातक त्रुटि C1018। मैंने उसी फ़ाइल में #ifdef के साथ अन्य शीर्षलेख फ़ाइलों को संलग्न करने का प्रयास किया, और संकलक खुश था। इसलिए, ऐसा लगता है कि विंडोज़ को ifdf-ed होने के लिए stdafx.h पसंद नहीं है, या विंडोज केवल # शामिल है, जिसमें फ़ाइल में पहली पंक्ति होने के लिए stdafx.h शामिल है।
तो मेरा सवाल है, क्यों? इसे बंद कर देते हैं और आप ठीक होना चाहिए -
कैट