overload binary + operator to work with different types

Marc jckj33 at gmail.com
Tue Mar 13 18:55:35 UTC 2018


I want to basically make this work:

>auto l = new List();
>l += 5;

I managed to do this:

>class List
>{
>	int[] items;
>	ref List opBinary(string op)(int rhs) if(op == "+")
>	{
>		items ~= rhs;
>		return *this;
>	}
}

Note the ref in the fucntion return, I also want to return a 
reference to the class so that this Works:

> l += 5 + 8 + 9 ... ;

Could someone point out how do that/what's wrong with my attempy?


More information about the Digitalmars-d-learn mailing list