NSString และ CFStringRef เป็น "Toll ฟรีบริดจ์" ซึ่งหมายความว่าคุณสามารถพิมพ์ระหว่างพวกเขา
ตัวอย่างเช่น:
CFStringRef aCFString = (CFStringRef)aNSString;
ทำงานได้อย่างสมบูรณ์แบบและโปร่งใส ในทำนองเดียวกัน:
NSString *aNSString = (NSString *)aCFString;
ไวยากรณ์ก่อนหน้านี้สำหรับ MRC หากคุณใช้ ARC ไวยากรณ์การคัดเลือกนักแสดงใหม่จะเป็นดังนี้:
NSString *aNSString = (__bridge NSString *)aCFString;
ทำงานได้เช่นกัน สิ่งสำคัญที่ควรทราบคือ CoreFoundation มักจะส่งคืนวัตถุที่มีจำนวนการอ้างอิง +1 ซึ่งหมายความว่าพวกเขาจำเป็นต้องได้รับการปล่อยตัวออกมา (CF ทั้งหมด [ประเภท] สร้างฟังก์ชั่นการจัดรูปแบบทำเช่นนี้)
สิ่งที่ดีคือในโกโก้คุณสามารถใช้ระบบปล่อยอัตโนมัติหรือปล่อยเพื่อปล่อยให้เป็นอิสระ