ⓘ سربارگذاری عملگرها. در برنامه‌نویسی رایانه‌ای سربارگذاری عملگر حالت ویژه‌ای از چندریختی است که در آن بخشی یا همهٔ عملگرها مانند + ، = یا بسته به نوع آرگومان‌های ..

                                     

ⓘ سربارگذاری عملگرها

در برنامه‌نویسی رایانه‌ای سربارگذاری عملگر حالت ویژه‌ای از چندریختی است که در آن بخشی یا همهٔ عملگرها مانند + ، = یا بسته به نوع آرگومان‌هایشان، پیاده‌سازی‌های متفاوتی دارند. گاهی سربارگذاری توسط زبان برنامه‌نویسی تعریف می‌شود. همچنین برنامه‌نویس می‌تواند برای پشتیبانی انواع جدید، عملگرها را دوباره پیاده‌سازی کند.

ادعا می‌شود سربارگذاری عملگرها مفید است چون اجازه می‌دهد روند توسعهٔ برنامه با استفاده از نشان‌گذاری "نزدیک‌تر به هدف" انجام شود. و این امکان را فراهم می‌سازد که انواع دادهٔ تعریف‌شده توسط کاربر با سطح نحویِ همسانی با انواع دادهٔ توکار زبان برنامه‌نویسی به‌کار برده شوند. این کار به‌آسانی می‌تواند با فراخوانی توابع شبیه‌سازی شود. برای مثال سه عدد صحیح a ، b ، c را در نظر بگیرید:

a + b * c

در یک زبان برنامه‌نویسی که از سربارگذاری عملگرها پشتیبانی می‌کند، با فرض این که تقدم عملگر * بیشتر از + است، در واقع عبارت بالا روش کاراتر نوشتن عبارت زیر است:

                                     

1. مثال‌ها

در این مثال، عملگر جمع سربارگذاری شده است تا توسط نوع دادهٔ تعریف‌شده توسط کاربرِ Time استفاده شود:

جمع یک عملیات دودویی است. بنابراین دو عملوند راست و چپ دارد. در سی++ آرگومان‌های ارسال شده به تابع جمع، عملوندها هستند. و شیء temp نتیجهٔ برگردانده شده است. این عملیات همچنین می‌تواند توسط یک متد از کلاس انجام شود. در این حالت عملوند lhs با this جایگزین می‌شود. می‌توان در بدنهٔ کلاس this را ننوشت. این کار باعث می‌شود عملوند سمت چپ لزوماً از نوع Time باشد همچنین امکان ایجاد تغییر در عملوندها را فراهم می‌سازد.

                                     
  • به طور ساده مفهوم تقدم اعمال ریاضی را نشان می دهند. خاصیت جابجایی سربارگذاری عملگرها Bronstein, Ilja Nikolaevič Semendjajew, Konstantin Adolfovič 1987
  • استاندارد همراه با ویژگی های شئ گرا مانند نوع ها اشیاء سربار گذاری عملگرها سربارگذاری تابع فاصله نام ها و به FreeBasic اضافه شده اند. خطهای FreeBasic