آموزش سی شارپ

مباحث پایه سی شارپ

مباحث پیشرفه سی شارپ

دستورات سی شارپ

سربارگذاری عملگرها در زبان سی شارپ – آموزش زبان سی شارپ

  • سه شنبه ۱۰ اردیبهشت ۱۳۹۸
  • بازدید ۳,۲۵۲ نفر

تصویر csharp-operator-overloading_4542 سربارگذاری عملگرها در زبان سی شارپ - آموزش زبان سی شارپ

سربارگذاری عملگرها در زبان سی شارپ

در زبان برنامه نویسی C# شما می توانید بسیاری از عملگرهای موجود را مجددا تعریف یا سربارگذاری کنید. عملگرهای سربارگذاری شده، توابعی هستند با نام خاص به همراه کلمه کلیدی operator و یک علامت مربوط به عملگر. مانند هر تابع دیگر توابع مربوط به سربارگذاری عملگرها، یک نوع بازگشتی و لیستی از پارامترها را دارد.

نمونه زیر یک تابع سربارگذاری عملگر جمع را نشان می دهد:

تابع فوق عملگر جمع را برای کلاس Box سربارگذاری کرده است. این عملگر دو شیء از نوع این کلاس را با هم جمع می کند و نتیجه را که از نوع Box خواهد بود، باز میگرداند.

سربارگذاری عملگر در سی شارپ

مثال زیر نحوه سربارگذاری عملگر جمع را به طور کامل نشان می دهد:

امتحان کنید

زمانی که کد بالا توسط کامپایلر سی شارپ اجرا شود، نتیجه زیر را تولید خواهد کرد:

عملگرهای قابل سربارگذاری و غیر قابل سربارگذاری

جدول زیر قابلیت سربارگذاری عملگرهای موجود در زبان برنامه نویسی سی شارپ را نشان می دهد:

ردیفتوضیحات
1+, -, !, ~, ++, —

این ها عملگرهای یگانی (unary) هستند که یک عملوند می گیرد و قابل سربارگذاری هستند.

2+, -, *, /, %

این ها عملگرهای باینری هستند که یک عملوند می گیرد و قابل سربارگذاری هستند.

3==, !=, <, >, <=, >=

عملگرهای مقایسه ای قابل سربارگذای هستند.

4&&, ||

عملگرهای شرطی منطقی به طور مستقیم قابل سربارگذاری نیستند.

5+=, -=, *=, /=, %=

عملگرهای انتساب قابل سربارگذاری نیستند.

6=, ., ?:, ->, new, is, sizeof, typeof

این عملگرها قابل سربارگذاری نیستند.

مثال

برای درک بهتر مبحث سربارگذاری عملگرها، مثال زیر را بررسی کنید که چندین عملگر مختلف در آن سربارگذاری شده اند:

امتحان کنید

زمانی که کد بالا کامپایل و اجرا شود، نتیجه زیر را تولید خواهد کرد:

ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است