มีข้อแตกต่างระหว่างอาร์กิวเมนต์และพารามิเตอร์หรือไม่


15

มันอาจจะเป็นเช่นนี้: พารามิเตอร์หมายถึงจากผู้โทร POV และข้อโต้แย้งหมายถึงภายในขั้นตอนหรือวิธีอื่น ๆ รอบ

หรือไม่มีความแตกต่าง?

ปรับปรุง

ในสวีเดนเราพูดว่า "anropsparametrar" เช่น "พารามิเตอร์ที่กำลังเรียกขั้นตอน" และเราจะไม่พูดว่า "anropsargument" ("อาร์กิวเมนต์ที่เรียกขั้นตอน")


1
มันจะขึ้นอยู่กับบริบทที่คุณอ้างถึง
Yusubov

2
โปรดค้นหาในครั้งต่อไป: stackoverflow.com/questions/3176310/…
Overv

1
@Overv แม้จะซ้ำกันก็ตาม คำถามนี้ถูกถามถึงพันล้านครั้ง ไม่สามารถเชื่อว่ามีการตั้งค่าความโปรดปราน
Alternatex

คำตอบ:


31

จากบทความ MSDN มีความแตกต่างของคำจำกัดความที่เรียกว่าพารามิเตอร์และสิ่งที่เรียกว่าอาร์กิวเมนต์:

พารามิเตอร์:

พารามิเตอร์แสดงถึงค่าที่ขั้นตอนคาดว่าคุณจะผ่านเมื่อคุณเรียกมัน การประกาศของโพรซีเดอร์กำหนดพารามิเตอร์

การโต้เถียง:

อาร์กิวเมนต์แสดงค่าที่คุณส่งไปยังพารามิเตอร์โพรซีเดอร์เมื่อคุณเรียกโปรซีเจอร์ รหัสการโทรให้ข้อโต้แย้งเมื่อมันเรียกขั้นตอน

นอกจากนี้ยังมีคำพูดที่ดีในการทำความเข้าใจในชีวิตจริงตัวอย่าง :

ในการสื่อสารข้อมูลนี้กับโพรซีเดอร์โพรซีเดอร์จะกำหนดพารามิเตอร์และรหัสการโทรจะส่งผ่านอาร์กิวเมนต์ไปยังพารามิเตอร์นั้น คุณสามารถคิดว่าพารามิเตอร์เป็นที่จอดรถและอาร์กิวเมนต์เป็นรถยนต์ เช่นเดียวกับรถยนต์ที่แตกต่างกันสามารถจอดในที่จอดรถในเวลาที่ต่างกันรหัสการโทรสามารถส่งอาร์กิวเมนต์ที่แตกต่างกันไปยังพารามิเตอร์เดียวกันทุกครั้งที่เรียกขั้นตอน


5
ข้อกำหนดภาษา C # เห็นด้วยกับสิ่งนี้ ตัวอย่างเช่นส่วน "1.6.6.1 พารามิเตอร์" ระบุว่า "พารามิเตอร์ของวิธีการรับค่าจริงของพวกเขาจากการขัดแย้งที่ระบุไว้เมื่อวิธีการที่ถูกเรียก"
akton
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.