Operator Overloading with class template
Francois Chabot
francois.chabot.dev at gmail.com
Sun Apr 8 16:44:11 PDT 2012
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...
More information about the Digitalmars-d-learn
mailing list