Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

โอเวอร์โหลดใน C # คืออะไร?


C# มีเทคนิคสองวิธีในการปรับใช้รูปแบบคงที่ -

  • ฟังก์ชั่นโอเวอร์โหลด
  • โอเปอเรเตอร์โอเวอร์โหลด

ฟังก์ชันโอเวอร์โหลด

สองวิธีหรือมากกว่าสองวิธีที่มีชื่อเหมือนกันแต่พารามิเตอร์ต่างกันคือสิ่งที่เราเรียกว่าฟังก์ชันโอเวอร์โหลดใน C#

ฟังก์ชันโอเวอร์โหลดใน C# สามารถทำได้โดยเปลี่ยนจำนวนอาร์กิวเมนต์และประเภทข้อมูลของอาร์กิวเมนต์

สมมติว่าคุณมีฟังก์ชันที่พิมพ์การคูณตัวเลข ดังนั้นวิธีที่โอเวอร์โหลดของเราจะมีชื่อเดียวกันแต่จำนวนอาร์กิวเมนต์ต่างกัน -

public static int mulDisplay(int one, int two) { }
public static int mulDisplay(int one, int two, int three) { }
public static int mulDisplay(int one, int two, int three, int four) { }

ต่อไปนี้คือตัวอย่างที่แสดงวิธีการใช้ฟังก์ชันโอเวอร์โหลด −

ตัวอย่าง

using System;
public class Demo {
   public static int mulDisplay(int one, int two) {
      return one * two;
   }

   public static int mulDisplay(int one, int two, int three) {
      return one * two * three;
   }
   
   public static int mulDisplay(int one, int two, int three, int four) {
      return one * two * three * four;
   }
}

public class Program {
   public static void Main() {
      Console.WriteLine("Multiplication of two numbers: "+Demo.mulDisplay(10, 15));
      Console.WriteLine("Multiplication of three numbers: "+Demo.mulDisplay(8, 13, 20));
      Console.WriteLine("Multiplication of four numbers: "+Demo.mulDisplay(3, 7, 10, 7));
   }
}

ผลลัพธ์

Multiplication of two numbers: 150
Multiplication of three numbers: 2080
Multiplication of four numbers: 1470

โอเปอเรเตอร์โอเวอร์โหลด

โอเปอเรเตอร์โอเวอร์โหลดคือฟังก์ชันที่มีชื่อพิเศษว่าโอเปอเรเตอร์คีย์เวิร์ดตามด้วยสัญลักษณ์สำหรับโอเปอเรเตอร์ที่กำลังกำหนด

ต่อไปนี้แสดงว่าตัวดำเนินการใดที่สามารถโอเวอร์โหลดได้ และตัวดำเนินการใดที่คุณไม่สามารถโอเวอร์โหลดได้ -

Sr.No ตัวดำเนินการ &คำอธิบาย
1 +, -, !, ~, ++, --
โอเปอเรเตอร์ unary เหล่านี้ใช้ตัวถูกดำเนินการหนึ่งตัวและสามารถโอเวอร์โหลดได้
2 +, -, *, /, %
ตัวดำเนินการไบนารีเหล่านี้ใช้ตัวถูกดำเนินการหนึ่งตัวและสามารถโอเวอร์โหลดได้
3 ==, !=, <,>, <=,>=
ตัวดำเนินการเปรียบเทียบสามารถโอเวอร์โหลดได้
4 &&, ||
ตัวดำเนินการตรรกะแบบมีเงื่อนไขไม่สามารถโอเวอร์โหลดได้โดยตรง
5 +=, -=, *=, /=, %=
ตัวดำเนินการมอบหมายไม่สามารถโอเวอร์โหลดได้
6 =, ., ?:, -<, ใหม่, คือ, ขนาด, ประเภทของ
โอเปอเรเตอร์เหล่านี้ไม่สามารถโอเวอร์โหลดได้