วันพุธที่ 21 สิงหาคม พ.ศ. 2556

ใบความรู้ที่ 5.2 การส่งค่าไปยังเมท็อด

ใบความรู้ที่ 5.2
การส่งค่าไปยังเมท็อด

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

ตัวอย่างที่ 5.2 เมท็อด PrintCharLine ด้านล่างนี้ดัดแปลงมาจากเมท็อด PrintLine เมท็อดใหม่นี้
กำหนดให้มีพารามิเตอร์สองตัว คือ c เป็นชนิด char และ len เป็นชนิด int โดยที่พารามิเตอร์ c ใช้
สำหรับระบุอักขระที่จะพิมพ์ออกทางจอภาพ ) ไม่ได้พิมพ์เพียงแค่ดาวอีกต่อไป (และ len ใช้ระบุจำนวน
อักขระที่ต้องการพิมพ์ในหนึ่งบรรทัด
1: using System;
2: class ParamNoRet {
3:   static void PrintCharLine(char c, int len) {
4:     for (int i = 0; i < len; i++)
5:       Console.Write(c);
6:     Console.WriteLine();
7:   }
8:
9:   static void Main() {
10:    PrintCharLine(’o’, 10);
11:    PrintCharLine(’x’, 20);
12:  }
13: }

          จากโปรแกรมข้างต้น การเรียกใช้เมท็อด PrintCharLine ครั้งแรกภายในเมท็อด Main ใน
บรรทัดที่ 10 มีอาร์กิวเมนต์เป็น 'o' และ 10 ซึ่งเมท็อด PrintCharLine จะรับค่าอาร์กิวเมนต์นี้เข้ามา
อยู่ในพารามิเตอร์ c และ len ตามลำดับ ดังนั้นจะเห็นว่าบรรทัดที่ 4 และ 5 จะมีผลทำให้โปรแกรมพิมพ์
อักขระ o ออกทางหน้าจอเป็นจำนวน 10 ตัว ในทำนองเดียวกัน การเรียกใช้เมท็อด PrintCharLine
ในบรรทัดที่ 11 จะมีผลทำให้โปรแกรมพิมพ์อักขระ x ออกทางหน้าจอเป็นจำนวน 20 ตัว

ไม่มีความคิดเห็น:

แสดงความคิดเห็น