Key Difference – ออก vs ref ใน C
C เป็นภาษาโปรแกรมสมัยใหม่ที่พัฒนาโดย Microsoft ใช้สำหรับพัฒนาแอพพลิเคชั่นต่างๆ สำหรับเดสก์ท็อป เว็บ และมือถือ ฟังก์ชั่นหรือวิธีการเป็นแนวคิดในการเขียนโปรแกรม กลุ่มคำสั่งที่ใช้ในการทำงานเฉพาะนั้นเรียกว่าฟังก์ชันหรือวิธีการ ในโปรแกรม C การดำเนินการเริ่มต้นจาก main () เป็นตัวอย่างหนึ่งของวิธีการ เมื่อเรียกใช้เมธอด ข้อมูลจะถูกส่งไปยังเมธอดหรือรับจากเมธอด เมธอดที่เรียกเมธอดใหม่เรียกว่าการเรียกเมธอด วิธีการใหม่เรียกว่าวิธีการที่เรียกว่า สำหรับการจัดการค่าที่ส่งผ่านและรับผลลัพธ์กลับ C จะใช้พารามิเตอร์พารามิเตอร์เหล่านี้คือค่าพารามิเตอร์ พารามิเตอร์เอาต์พุต และพารามิเตอร์อ้างอิง พารามิเตอร์ค่าใช้สำหรับส่งพารามิเตอร์ไปยังวิธีการตามค่า พารามิเตอร์อ้างอิงใช้เพื่อส่งผ่านพารามิเตอร์ไปยังเมธอดโดยการอ้างอิง พารามิเตอร์เอาต์พุตใช้เพื่อส่งผลลัพธ์กลับจากเมธอด ใน C คีย์เวิร์ด out ใช้สำหรับพารามิเตอร์เอาต์พุต และคีย์เวิร์ด ref ใช้เพื่ออ้างอิงพารามิเตอร์ ความแตกต่างที่สำคัญระหว่าง out และ ref ใน Cคือ out เป็นคีย์เวิร์ดที่ใช้อ้างอิงพารามิเตอร์เอาต์พุตที่ใช้ส่งผ่านผลลัพธ์จากเมธอดที่เรียกไปยังเมธอดการเรียก ในขณะที่ ref เป็นคีย์เวิร์ดเพื่ออ้างอิงพารามิเตอร์อ้างอิงที่ใช้ส่ง ข้อมูลจากวิธีการโทรไปยังวิธีการโทรและรับข้อมูลจากวิธีที่เรียกไปยังวิธีการโทร
ใน C จะออกอะไร
ไวยากรณ์ของฟังก์ชันหรือเมธอดมีดังนี้ เมธอดมีองค์ประกอบหลายอย่าง เช่น ชื่อเมธอด รายการพารามิเตอร์ ประเภทส่งคืน และตัวระบุการเข้าถึง
(รายการพารามิเตอร์)
{ //คำสั่งที่จะดำเนินการ
}
แต่ละวิธีมีวิธีการเฉพาะในการเรียกใช้ฟังก์ชัน คำสั่งปฏิบัติการอยู่ในวงเล็บปีกกา ประเภทส่งคืนอธิบายว่าฟังก์ชันส่งคืนค่าหรือไม่ เมื่อไม่มีประเภทส่งคืนจะเรียกว่าเป็นโมฆะ ตัวระบุการเข้าถึงใช้เพื่อระบุวิธีการเข้าถึงในแอปพลิเคชัน พารามิเตอร์จะใช้เพื่อรับหรือส่งข้อมูลไปยังวิธีการ นอกจากนี้ยังสามารถมีวิธีการที่ไม่มีพารามิเตอร์ได้อีกด้วย พารามิเตอร์อาจเป็นค่าพารามิเตอร์ พารามิเตอร์เอาต์พุต หรือพารามิเตอร์อ้างอิง
พารามิเตอร์เอาต์พุตใช้เพื่อส่งผลลัพธ์กลับไปยังวิธีการเรียก เพื่อการนั้น พารามิเตอร์ควรถูกประกาศโดยเอาคีย์เวิร์ดออก พารามิเตอร์เอาต์พุตไม่ได้สร้างตำแหน่งที่เก็บข้อมูลใหม่ โดยทั่วไปเมธอดจะส่งกลับค่าหนึ่งค่าแต่ใน C คุณสามารถคืนค่าสองค่าจากฟังก์ชันโดยใช้พารามิเตอร์เอาต์พุต อ้างอิงโปรแกรมด้านล่าง
แอปพลิเคชันเนมสเปซ1{
การคำนวณชั้นเรียนสาธารณะ{
แสดงโมฆะสาธารณะ(ออก int ออก int b){
มูลค่า int=5;
a=ค่า;
b=ค่า;
a=a a;
b=bb;
}
public static void main(สตริง args){
int value1=10, value2=20;
การคำนวณ cal=การคำนวณใหม่();
cal.display(ออก value1, out value2);
Console. ReadLine();
}
}
}
ฟังก์ชั่นการแสดงผลถูกเรียกจากวิธีหลัก ค่าที่ 1 และค่าที่สองมี 10 และ 20 แต่จะไม่รวมอยู่ในวิธีการ ค่าของ a คือ 25 และค่าของ b ก็คือ 25 ในฟังก์ชันด้วยดังนั้น ค่าเหล่านั้นจะถูกส่งกลับ เมื่อพิมพ์ value1 และ value2 จะไม่ให้ 10 และ 20 แต่จะพิมพ์ 25 และ 25 แทน การใช้คีย์เวิร์ด out หลายค่าสามารถส่งคืนได้จากเมธอด
การอ้างอิงใน C คืออะไร
เมื่อส่งพารามิเตอร์ตามค่า ตำแหน่งการจัดเก็บใหม่จะถูกสร้างขึ้นสำหรับแต่ละพารามิเตอร์ พารามิเตอร์จริงที่ส่งจากโปรแกรมหลักจะไม่เปลี่ยนแปลง ค่าเหล่านั้นจะถูกคัดลอกไปยังตำแหน่งอื่นแทน สำเนาตัวแปรใหม่เหล่านี้เรียกว่าพารามิเตอร์ที่เป็นทางการ อ้างอิงรหัสด้านล่าง
แอปพลิเคชันเนมสเปซ1{
การคำนวณชั้นเรียนสาธารณะ{
เปลี่ยนโมฆะสาธารณะ(int x, int y){
อุณหภูมิภายใน
temp=x;
x=y;
y=อุณหภูมิ;
}
public static void main(สตริง args){
การคำนวณ cal=การคำนวณใหม่();
int p=2;
int q=3;
cal.swap(p, q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
ตามโปรแกรมด้านบน คลาสการคำนวณมี method swap () ในโปรแกรมหลัก วัตถุประเภทการคำนวณจะถูกสร้างขึ้น มีสองค่าเช่น p และ q ตัวแปร p มีค่า 2 และตัวแปร q มีค่า 3 ค่าทั้งสองจะถูกส่งไปยังวิธีการแลกเปลี่ยน ในวิธีการสลับ ค่า 2 จะถูกคัดลอกไปยังตัวแปร x และค่า 3 จะถูกคัดลอกไปยังตัวแปร y การใช้ตัวแปร temp ค่าจะถูกสลับ กลับไปที่โปรแกรมหลัก เมื่อพิมพ์ p และ q ค่าจะไม่ถูกสลับ ค่า p ยังคงเป็น 2 และค่า q เท่ากับ 3 แม้ในวิธีการแลกเปลี่ยน ค่าจะถูกสลับแต่ไม่สะท้อนในโปรแกรมหลัก
ไม่เหมือนกับการส่งค่าด้านบน สามารถส่งพารามิเตอร์โดยการอ้างอิงได้ ตัวแปรอ้างอิงคือการอ้างอิงไปยังตำแหน่งหน่วยความจำไม่มีการสร้างตำแหน่งหน่วยความจำใหม่ การเปลี่ยนแปลงวิธีการสะท้อนให้เห็นในโปรแกรมหลัก ใน Cพารามิเตอร์อ้างอิงถูกอ้างอิงโดยใช้คำสำคัญอ้างอิง อ้างอิงโปรแกรมด้านล่าง
แอปพลิเคชันเนมสเปซ1{
การคำนวณชั้นเรียนสาธารณะ{
เปลี่ยนโมฆะสาธารณะ(อ้างอิง int x, อ้างอิง int y){
อุณหภูมิภายใน
อุณหภูมิ=x;
x=y;
y=อุณหภูมิ;
}
public static void main(สตริง args){
การคำนวณ cal=การคำนวณใหม่();
int p=2;
int q=3;
cal.swap(อ้างอิง p, ref q);
Console. WriteLine(p);
Console. WriteLine(q);
Console. ReadLine();
}
}
}
ตามโปรแกรมด้านบน การคำนวณคลาสมีวิธีการสลับในโปรแกรมหลัก วัตถุประเภทการคำนวณจะถูกสร้างขึ้น เป็นตัวแปรสองตัวเช่น p และ q ตัวแปร p มีค่า 2 และตัวแปร q มีค่า 3 แทนที่จะส่งผ่านค่า การอ้างอิงไปยังตำแหน่งหน่วยความจำของ p และ q จะถูกส่งไปยังเมธอด ตัวแปรอ้างอิงเหล่านั้นถูกอ้างอิงโดยใช้การอ้างอิง ในวิธีการสลับ แทนที่จะจัดการกับค่าไปยังตำแหน่งใหม่ การเปลี่ยนแปลงจะทำกับพารามิเตอร์จริง เมื่อพิมพ์ค่า p และ q ของโปรแกรมหลัก มันจะให้ค่าที่สลับ ตอนนี้ค่า p คือ 3 และค่า q คือ 2.
ความคล้ายคลึงกันระหว่าง out กับ ref ใน C คืออะไร
ทั้งสองเป็นคีย์เวิร์ดที่ใช้อ้างอิงพารามิเตอร์ของเมธอด
ความแตกต่างระหว่างการออกและผู้อ้างอิงใน C คืออะไร
ออก vs กรรมการใน C |
|
The out เป็นคีย์เวิร์ดในภาษา C ที่ใช้อ้างอิงพารามิเตอร์เอาต์พุต ใช้เพื่อส่งต่อผลลัพธ์จาก method ที่เรียกไปยัง method | การอ้างอิงคือคีย์เวิร์ดในภาษา C ที่ใช้อ้างอิงพารามิเตอร์อ้างอิง ใช้เพื่อส่งข้อมูลจากวิธีการโทรไปยังวิธีที่เรียกและเพื่อส่งคืนข้อมูลจากวิธีที่เรียกไปยังวิธีการโทร |
ฟังก์ชั่น | |
เมื่อใช้คีย์เวิร์ด Out ข้อมูลจะถูกส่งต่อจากเมธอดการโทรไปยังเมธอดที่เรียก แต่ข้อมูลนั้นถูกยกเลิก ใช้เพื่อส่งต่อผลลัพธ์ไปยังวิธีการโทรจากวิธีที่เรียก | เมื่อใช้คีย์เวิร์ด ref ข้อมูลจะถูกส่งต่อจากเมธอดการโทรไปยังเมธอดที่เรียก และข้อมูลที่ถูกจัดการจะถูกส่งกลับไปยังเมธอดการโทร |
การส่งข้อมูล | |
เมื่อใช้คีย์เวิร์ดออก ข้อมูลจะถูกส่งต่อในลักษณะที่เรียกว่าเมธอดไปยังเมธอดการโทร | เมื่อใช้คีย์เวิร์ด ref ข้อมูลจะถูกส่งผ่านในสองวิธี คือ จากโทรไปยังวิธีที่เรียกและจากวิธีที่เรียกไปยังวิธีการโทร |
สรุป – ออก vs กรรมการใน C
เมื่อเรียกใช้เมธอด อาจจำเป็นต้องส่งค่าเข้าไปในเมธอดและรับผลลัพธ์จากเมธอดกลับคืนมา Cมีพารามิเตอร์ต่างกันเพื่อให้บรรลุเป้าหมายนั้น พารามิเตอร์ค่าใช้สำหรับส่งพารามิเตอร์ไปยังวิธีการตามค่า พารามิเตอร์อ้างอิงใช้เพื่อส่งผ่านพารามิเตอร์ไปยังเมธอดโดยการอ้างอิง พารามิเตอร์เอาต์พุตใช้เพื่อส่งผลลัพธ์กลับจากเมธอด ใน C คีย์เวิร์ด out ใช้สำหรับพารามิเตอร์เอาต์พุต และคีย์เวิร์ด ref ใช้เพื่ออ้างอิงพารามิเตอร์ ความแตกต่างระหว่าง out และ ref ใน C คือ out เป็นคีย์เวิร์ดที่ใช้อ้างอิงพารามิเตอร์เอาต์พุตที่ใช้ส่งผ่านผลลัพธ์จากเมธอดที่เรียกไปยังเมธอดการเรียก ขณะที่ ref เป็นคีย์เวิร์ดเพื่ออ้างอิงพารามิเตอร์อ้างอิงที่ใช้ส่งผ่านข้อมูลจาก วิธีการโทรไปยังวิธีการโทรและรับข้อมูลจากวิธีที่เรียกไปยังวิธีการโทร
ดาวน์โหลดไฟล์ PDF ของ out vs ref ใน C
คุณสามารถดาวน์โหลดไฟล์ PDF ของบทความนี้และใช้เพื่อวัตถุประสงค์ออฟไลน์ตามหมายเหตุอ้างอิง โปรดดาวน์โหลดไฟล์ PDF ที่นี่: ความแตกต่างระหว่าง Out และ Ref ใน C