Call by reference อธิบายด้วยโปรแกรมคืออะไร?
Call by reference อธิบายด้วยโปรแกรมคืออะไร?

วีดีโอ: Call by reference อธิบายด้วยโปรแกรมคืออะไร?

วีดีโอ: Call by reference อธิบายด้วยโปรแกรมคืออะไร?
วีดีโอ: Java Call by Value vs Call by Reference. Object Oriented Java Tutorial: #12 2024, อาจ
Anonim

โฆษณา NS โทรโดยอ้างอิง วิธีการของ ผ่าน ข้อโต้แย้งของ a การทำงาน คัดลอกที่อยู่ของอาร์กิวเมนต์ลงในพารามิเตอร์ที่เป็นทางการ ข้างใน การทำงาน , ที่อยู่ใช้เพื่อเข้าถึงอาร์กิวเมนต์จริงที่ใช้ใน เรียก . หมายถึงการเปลี่ยนแปลงที่ทำกับพารามิเตอร์ส่งผลต่ออาร์กิวเมนต์ที่ส่งผ่าน

ดังนั้น การโทรโดยการอ้างอิงหมายถึงอะไร?

NS โทรโดยอ้างอิง วิธีการส่งผ่านอาร์กิวเมนต์ไปยังฟังก์ชันคัดลอก อ้างอิง ของอาร์กิวเมนต์ในพารามิเตอร์ที่เป็นทางการ ภายในฟังก์ชัน the อ้างอิง ใช้เพื่อเข้าถึงอาร์กิวเมนต์จริงที่ใช้ใน เรียก . นี้ วิธี การเปลี่ยนแปลงที่ทำกับพารามิเตอร์ส่งผลต่ออาร์กิวเมนต์ที่ส่งผ่าน

รู้ยังว่าการเรียกตามค่าและการอ้างอิงใน C คืออะไร? ใน เรียก โดย อ้างอิง ตำแหน่ง (ที่อยู่) ของอาร์กิวเมนต์จริงถูกส่งไปยังอาร์กิวเมนต์อย่างเป็นทางการของ เรียกว่า การทำงาน. ซึ่งหมายความว่าโดยการเข้าถึงที่อยู่ของอาร์กิวเมนต์จริงเราสามารถแก้ไขได้จาก เรียกว่า การทำงาน. ใน โทรตามค่า อาร์กิวเมนต์จริงจะยังคงปลอดภัย ไม่สามารถแก้ไขได้โดยไม่ได้ตั้งใจ

เมื่อพิจารณาถึงสิ่งนี้ อะไรคือความแตกต่างระหว่าง call by value และ call by reference อธิบายด้วยตัวอย่าง?

ใน โทรตามมูลค่า สำเนาของตัวแปรจะถูกส่งผ่านในขณะที่in โทรโดยอ้างอิง ตัวแปรเองถูกส่งผ่าน ใน โทรตามมูลค่า อาร์กิวเมนต์ที่เกิดขึ้นจริงและเป็นทางการจะถูกสร้างขึ้นในตำแหน่งหน่วยความจำที่แตกต่างกันในขณะที่in โทรโดยอ้างอิง , อาร์กิวเมนต์ที่เกิดขึ้นจริงและเป็นทางการจะถูกสร้างขึ้น ใน ตำแหน่งหน่วยความจำเดียวกัน

ข้อดีของการโทรโดยการอ้างอิงคืออะไร?

หนึ่ง ข้อได้เปรียบ ของ โทรโดยอ้างอิง วิธีคือใช้พอยน์เตอร์จึงไม่มีหน่วยความจำที่ใช้โดยตัวแปรสองเท่า (เช่นเดียวกับสำเนาของ เรียก โดยวิธีมูลค่า) แน่นอนว่าสิ่งนี้ยอดเยี่ยมมาก การลดขนาดหน่วยความจำลงเป็นสิ่งที่ดีเสมอ

แนะนำ: