7
ออกแบบ: โทรกลับไปที่ชั้นผู้ปกครอง
เมื่อสร้างแบบจำลองวัตถุกับเด็ก ๆ เป็นเรื่องปกติที่จะรวมเด็ก ๆ ผ่านการจัดองค์ประกอบในฐานะสมาชิกของชั้นผู้ปกครอง บางครั้งเด็ก ๆ ต้องบอกบางสิ่งกับผู้ปกครองพวกเขาจำเป็นต้องเรียกใช้ฟังก์ชันของผู้ปกครอง วิธีนี้สามารถทำได้โดยใช้ C ++ ตัวเลือกบางอย่างคือ: ทำให้คลาส parent ระดับโลกดังนั้นวัตถุลูกจะสามารถเรียกฟังก์ชันสมาชิกของวัตถุแม่ได้ ฉีดวัตถุแม่เป็นตัวชี้หรือการอ้างอิงลงในวัตถุลูกทุก จากนั้นเมื่อเด็กต้องการบอกวัตถุแม่บางอย่างก็สามารถทำได้เพราะมันมีตัวแปรสมาชิกที่สามารถใช้ วิธีอื่นในการทำเช่นนี้คืออะไร? มีลวดลายหรือชื่อการออกแบบทั่วไปสำหรับสิ่งนี้หรือไม่? โปรดทราบว่าฉันสนใจในแนวคิดและวิธีแก้ปัญหาใน C ++ เนื่องจากรายละเอียดจะแตกต่างกันในภาษาเชิงวัตถุอื่น ๆ ตัวอย่างเช่นจุดที่ 2 ด้านบนกล่าวถึง 'ตัวชี้หรือการอ้างอิง' และทั้งสองจะเป็นไปได้ใน C ++ เท่านั้น C ++ มีฟีเจอร์ภาษาที่ไม่ปรากฏในภาษาอื่นดังนั้นการใช้งานโซลูชันเพื่อแก้ไขปัญหาอาจรวมฟีเจอร์ภาษาเหล่านี้ซึ่งทำให้โซลูชันแตกต่างจากสิ่งที่อาจมีในภาษาอื่น