overload of array operations

Jonathan M Davis jmdavisProg at gmx.com
Fri Oct 14 12:43:05 PDT 2011


On Friday, October 14, 2011 15:29:17 Jay Norwood wrote:
> Jonathan M Davis Wrote:
> > On Friday, October 14, 2011 11:30:25 Jay Norwood wrote:
> > > Is it possible to overload array operations
> > 
> > Please be more specific. Are you asking whether a struct or class can
> > overload the indexing and slicing operators? If so, the answer is yes.
> > 
> > http://d-programming-language.org/operatoroverloading.html
> > 
> > - Jonathan M Davis
> 
> to be more specific, I'm interested in overloading the vector operations on
> arrays described at this link, search for "vector operation"
> 
> http://www.digitalmars.com/d/2.0/arrays.html

You could probably do it if you're fancy, but there's no explicit way to have 
a struct or class operate like that. If you really wanted to though, you could 
overload opSlice on your struct to return a specific type which then overloaded 
opBinary for + and then have that return a new struct with the changed values. 
But that borders on overloaded operator abuse.

Vector operations are really only intended for arrays.

- Jonathan M Davis


More information about the Digitalmars-d-learn mailing list