से ऑब्जेक्टिव-सी # डिफाइन का उपयोग कैसे करें मैं स्विफ्ट के साथ थोड़ा सा ट्रेन करने के लिए UIViewController
कक्षा माइग्रेट कर रहा हूं। मैं ब्रिजिंग हेडर के माध्यम से उद्देश्य-सी कोड का सफलतापूर्वक उपयोग कर रहा हूं लेकिन मुझे एक स्थिरांक फ़ाइल आयात करने की आवश्यकता है जिसमें #define
निर्देश शामिल हैं।स्विफ्ट
मैं Using Swift with Cocoa and Objective-C (सरल मैक्रो) में देखा है निम्नलिखित:
सरल मैक्रो
कहाँ आप आमतौर पर सी और ऑब्जेक्टिव-सी में एक आदिम लगातार परिभाषित करने के लिए
#define
निर्देश इस्तेमाल किया, में स्विफ्ट आप इसके बजाय एक वैश्विक स्थिरता का उपयोग करें। उदाहरण के लिए, निरंतर परिभाषा#define FADE_ANIMATION_DURATION 0.35
स्विफ्ट मेंlet FADE_ANIMATION_DURATION = 0.35
के साथ बेहतर व्यक्त की जा सकती है। चूंकि सरल स्थिर-जैसे मैक्रोज़ मानचित्र सीधे वैश्विक चर को स्विफ्ट करने के लिए, संकलक स्वचालित रूप से सी और उद्देश्य-सी स्रोत फ़ाइलों में परिभाषित सरल मैक्रोज़ आयात करता है।
तो, ऐसा लगता है कि यह संभव है। मैंने अपनी स्थिरांक वाली फाइल को ब्रिजिंग हेडर में आयात किया है, लेकिन मेरे पास फ़ाइल से कोई दृश्यता नहीं है, इसे हल नहीं किया जा सकता है।
मेरे स्थिरांक को स्विफ्ट के लिए दृश्यमान बनाने के लिए मुझे क्या करना चाहिए?
अद्यतन:
यह नहीं NSString
स्थिरांक के साथ काम करने लगता है, लेकिन बूलियन्स साथ: इस समय
#define kSTRING_CONSTANT @"a_string_constant" // resolved from swift
#define kBOOL_CONSTANT YES // unresolved from swift
हाँ के बजाय सच का उपयोग करें। –