More on vectorized comparisons
Peter Alexander
peter.alexander.au at gmail.com
Mon Aug 27 13:50:02 PDT 2012
On Monday, 27 August 2012 at 20:29:29 UTC, bearophile wrote:
> I think in code like this:
>
> if (a[] >= 0)
> b[] += c[];
>
> The 'b' and 'c' arrays receive the implicit index of the items
> of 'a' that aren't negative.
Ok, I can see the use of this, but I find the syntax *very*
confusing. Expressions shouldn't be able to mess with code
semantics like that.
If you wanted to do something like that, I could live with this
syntax:
b[] += (a[] >= 0 ? c[] : 0);
The a[] >= 0 returns a vector of booleans, and then the ternary
operator acts element-wise with those booleans as the condition.
More information about the Digitalmars-d
mailing list