Operator Overloading with class template

Eyyub eyyub.pangearaion at gmail.com
Sun Apr 8 16:46:18 PDT 2012


On Sunday, 8 April 2012 at 23:44:12 UTC, Francois Chabot wrote:
> On Sunday, 8 April 2012 at 23:41:51 UTC, Francois Chabot wrote:
>> On Sunday, 8 April 2012 at 23:14:33 UTC, Eyyub wrote:
>>> Hello,
>>>
>>> How can I rewrite the exemple 2 
>>> (http://pastebin.com/q50903Zh) in D lang. ?
>>> This source code doesn't work...why ?
>>> http://paste.pocoo.org/show/wy1kDIpqTi2ApRuOxRRb/
>>>
>>> Thx. :)
>>
>> As far as I know, there is nothing special about themplate 
>> classes with regards to operator overloading, so you can 
>> follow the examples in there: 
>> http://dlang.org/operatoroverloading.html
>>
>> which in your example would yield:
>>
>> Matrix opOpAssign(string op)( Matrix rhs )
>> {	
>>  for( size_t i =0 ; i < M ; ++i )
>>  {
>>    for( size_t j =0 ; j < N ; ++j )
>>    {
>>      mixin("array_[i*N+j]" ~ op ~ " rhs.array_[i*N+j] ;") ;
>>    }
>>  }
>> }
>>
>> Bonus! all ...= operators implemented at once!
>
> Nevermind, read your message too quickly... I thought it was 
> about the matrix class...

Np :D, you don't know how can I do for the example 2 ?


More information about the Digitalmars-d-learn mailing list