عملگر + به نحوی برای delegate سربارگذاری شده است تا لیست توابع دو delegate را در یک شی delegate ترکیب کند. برای مثال کلاس زیر را در نظر بگیرید که دارای دو تابع عضو است.


class HandlerClass
{public:
 static void Func1()
 {
   Console::WriteLine("First function called\n");
 }
 static void Func2()
 {
   Console::WriteLine("Second function called\n");
 }
};


همچنین delegate را به صورت زیر تعریف کرده ایم :

public delegate void HANDLER ();


حالا یک بار delegate را با تابع اول (Func1) تعریف می کنیم و آن را فراخوانی می کنیم.


HANDLER^ handler = gcnew HANDLER (HandlerClass::Func1);
handler();

چون تابع اول تنها تابع در لیست فراخووانی delegate است، خروجی به صورت زیر خواهد بود :

"First function called"

حالا با استفاده از عملگر + تابع دوم را به لیست توابع delegate اضافه می کنیم.

handler += gcnew HANDLER(HandlerClass::Func2);

الان متغیر handler به دلیگیتی اشاره دارد که دو تابع را در لیست توابع خود دارد. البته این دستور یک delegate جدید ایجاد می کند. حالا دوباره آن را فراخوانی می کنیم. 

handler();

حالا این خروجی را خواهید گرفت :

"First function called"
"Second function called"

هر دو تابعی که که در لیست دلیگیت وجود دارند به ترتیبی که در آن قرار گرفته اند فراخوانی می شوند.
عملگر - نیز عملکردی مشابه عملکرد + دارد، البته واضح است که اینبار توابع مشخص شده به صورت ارگومان، از لیست توابع delegate خذف می شوند. برای مثال دستور زیر تابع Func2 را از لیست handler حذف می کند.

handler -= gcnew HANDLER(HandlerClass::Func2);

در برنامه نویسی با فناوری Windows Forms بسیار از این دو عملگر برای ایجاد و به کار گیری Event های مختلف استفاده می شود.