Exercise at end of Ch. 56 of "Programming in D"
johntp
albertqaeda at yahoo.com
Mon Aug 15 03:19:43 UTC 2022
On Monday, 15 August 2022 at 02:23:34 UTC, Ali Çehreli wrote:
> Wow! Are people actually working on those? :)
Absolutely. Thanks for the book. I'm enjoying it.
> At first, I couldn't even get the code to compile due to
> const-correctness issues with opCmp. :/ I used the following
> cast():
>
> foreach (i, point; points) {
> immutable comparison = (cast()point).opCmp(rhs.points[i]);
> // ...
> }
>
For some reason I didn't have this problem.
> The bug was with trying to implement that unnatural "ignore the
> color" in the comparison logic but then toHash was taking
> advantage of existing array hashing code, which had no idea of
> the programmer's requirement:
I thought that was the problem, but wasn't sure. I wasn't
getting the same hash code for area1 and area2.
Your solution worked. I guess it is a little unnatural to ignore
the color. I tried overriding the toHash() of Point, but I don't
know enough D to get it to work. I wonder if that could be a
solution.
Thanks so much for the reply.
More information about the Digitalmars-d-learn
mailing list