Avatar ·

स्विफ्ट में स्ट्रक्चर के लिए memberwise इनिशियलाइज़र को डिफ़ॉल्ट रूप से पब्लिक कैसे बनाएं?

सभी को नमस्ते! मैंने Swift सीखना शुरू किया है और स्ट्रक्चर (struct) के साथ काम करते समय एक समस्या का सामना किया। डिफ़ॉल्ट रूप से Swift स्ट्रक्चर के लिए memberwise इनिशियलाइज़र (एलिमेंट-वार इनिशियलाइज़र) जनरेट करता है, जो सभी प्रॉपर्टी के लिए मान पास करके एक इंस्टेंस बनाने की अनुमति देता है। लेकिन अगर मैं `public` एक्सेस लेवल वाला स्ट्रक्चर घोषित करता हूं, तो memberwise इनिशियलाइज़र पब्लिक के बजाय इंटरनल (internal) हो जाता है। इस वजह से मैं दूसरे मॉड्यूल से स्ट्रक्चर का उपयोग नहीं कर सकता। यहाँ एक उदाहरण है: ```swift // ModuleA.swift public struct User { public let name: String public let age: Int // memberwise इनिशियलाइज़र स्पष्ट रूप से घोषित नहीं किया गया } // ModuleB.swift (दूसरा मॉड्यूल) let user = User(name: "Alice", age: 30) // त्रुटि: 'User' को memberwise इनिशियलाइज़र से इनिशियलाइज़ नहीं किया जा सकता ``` मैं