Sudoku Py / C++11 / D?
Chris Cain
clcain at uncg.edu
Fri Aug 24 12:48:40 PDT 2012
On Friday, 24 August 2012 at 19:32:53 UTC, maarten van damme
wrote:
> I've distiled what I understood from your source and the
> resulting
> executable managed to solve the impossible one in 27 seconds
> while
> your source takes 41 seconds.
>
> I've probably violated every D guideline concerning the use of
> static,
> pure, nothrow,... but it works perfectly :)
Nice job! I looked at it quickly, but it seems like a good
solution.
> It does fail to compile on dpaste, I have no idea why. It does
> compile
> on my machine though...
>
> http://dpaste.dzfl.pl/8a2aef5b
It's because dpaste is compiling for 64-bit and you're compiling
it for 32-bit. length is a size_t which is uint in 32-bit
environments and ulong in 64-bit. A long/ulong isn't implicitly
convertable to int/uint in D. On line 119, either you need to use
an explicit cast or you can change the type of curLength to long,
ulong, or size_t.
In this case, since you expect curLength to be fairly small (much
smaller than an int), I'd just stick a cast in there. Though, in
general, changing the type to a size_t is better.
More information about the Digitalmars-d-learn
mailing list