การเชื่อมโยงฟังก์ชันกับอ็อบเจ็กต์ระหว่างเวลาคอมไพล์เรียกว่าการโยงแบบคงที่ C# มีเทคนิค 2 แบบในการใช้ Static Polymorphism ได้แก่ Function overloading และ Operator overloading
ใน Function Overloading คุณสามารถมีคำจำกัดความได้หลายแบบสำหรับชื่อฟังก์ชันเดียวกันในขอบเขตเดียวกัน
ตัวอย่าง
void print(int i) { Console.WriteLine("Printing int: {0}", i ); } void print(double f) { Console.WriteLine("Printing float: {0}" , f); }
ตัวดำเนินการโอเวอร์โหลดเป็นฟังก์ชันที่มีชื่อพิเศษ ตัวดำเนินการคีย์เวิร์ด IS ตามด้วยสัญลักษณ์สำหรับตัวดำเนินการที่กำลังกำหนด
ตัวอย่าง
public static Box operator+ (Box b, Box c) { Box box = new Box(); box.length = b.length + c.length; box.breadth = b.breadth + c.breadth; box.height = b.height + c.height; }