Middle — Middle+
შესაძლებელია თუ არა ჩავთვალოთ სუსტი კავშირი როგორც არჩევითი ან ის სხვაგვარად მოქმედებს?
sobes.tech AI
პასუხი AI-სგან
Swift-এ দুর্বল সংযোগ হল একটি সংযোগ যা সেই অবজেক্টের রেফারেন্স কাউন্টার বাড়ায় না যেটিতে এটি নির্দেশ করে। এটি সর্বদা অপশনাল হিসাবে ঘোষণা করা হয়, কারণ এটি নির্দেশ করে এমন অবজেক্টটি স্মৃতি থেকে সরানো যেতে পারে, এবং সেই ক্ষেত্রে দুর্বল সংযোগ স্বয়ংক্রিয়ভাবে nil হয়ে যায়।
অর্থাৎ, দুর্বল সংযোগ একটি অপশনালের মতো আচরণ করে: এটি মান বা nil থাকতে পারে। এটি গুরুত্বপূর্ণ যাতে ইতিমধ্যে মুক্ত করা অবজেক্টে অ্যাক্সেস এড়ানো যায়।
উদাহরণ:
class Person {
var name: String
init(name: String) { self.name = name }
}
var person: Person? = Person(name: "Alex")
weak var weakPerson: Person? = person
print(weakPerson?.name) // Optional("Alex")
person = nil
print(weakPerson?.name) // nil, কারণ অবজেক্টটি সরানো হয়েছে
অতএব, দুর্বল সংযোগ সর্বদা অপশনাল এবং অবজেক্ট সরানোর সময় স্বয়ংক্রিয়ভাবে nil হয়ে যায়।