คำถามติดแท็ก object-initializers

26
Singleton Objective-C ของฉันควรมีลักษณะอย่างไร [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ วิธีการเข้าถึงเดี่ยวของฉันมักจะแตกต่างจาก: static MyClass *gInstance = NULL; + (MyClass *)instance { @synchronized(self) { if (gInstance == NULL) gInstance = [[self alloc] init]; } return(gInstance); } ฉันจะทำอะไรเพื่อปรับปรุงสิ่งนี้

8
แนวทางปฏิบัติที่ดีที่สุดในการติดตั้งโปรแกรมเริ่มต้นที่ล้มเหลวใน Swift
ด้วยรหัสต่อไปนี้ฉันพยายามกำหนดคลาสโมเดลอย่างง่ายและเป็นตัวเริ่มต้นที่ล้มเหลวซึ่งใช้พจนานุกรม (json-) เป็นพารามิเตอร์ initializer ควรส่งคืนnilหากไม่ได้กำหนดชื่อผู้ใช้ใน json ดั้งเดิม 1. ทำไมโค้ดไม่คอมไพล์ ข้อความแสดงข้อผิดพลาดระบุว่า: คุณสมบัติที่เก็บไว้ทั้งหมดของอินสแตนซ์คลาสจะต้องถูกเตรียมใช้งานก่อนที่จะคืนค่าศูนย์จากตัวเริ่มต้น นั่นไม่สมเหตุสมผล ทำไมฉันจึงควรเริ่มต้นคุณสมบัติเหล่านั้นเมื่อผมวางแผนที่จะกลับมาnil? 2. แนวทางของฉันเป็นแนวทางที่ถูกต้องหรือมีแนวคิดอื่น ๆ หรือรูปแบบทั่วไปเพื่อให้บรรลุเป้าหมายของฉันหรือไม่? class User: NSObject { let userName: String let isSuperUser: Bool = false let someDetails: [String]? init?(dictionary: NSDictionary) { if let value: String = dictionary["user_name"] as? String { userName = value } else { …

3
ไวยากรณ์การเริ่มต้นอ็อบเจ็กต์
ฉันเพิ่งเริ่มต้นด้วย F # และฉันไม่พบไวยากรณ์ที่จะทำการเริ่มต้นวัตถุเหมือนใน C # 3 เช่นให้สิ่งนี้: public class Person { public DateTime BirthDate { get; set; } public string Name { get; set; } } ฉันจะเขียนสิ่งต่อไปนี้ใน F # ได้อย่างไร: var p = new Person { Name = "John", BirthDate = DateTime.Now };
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.