On Wed, 27 Jan 2010 20:32:20 -0500, strtr <st...@spam.com> wrote:

Personally, I use (D1)std2.conv a lot to get values from strings and thus would love the following default behaviour for all types:

int i = "0"; // i = 0

Um... why? How is int i = 0; more difficult to use/understand than int i = "0";

If you want to assign from a variable, then i = to!(int)x; works. It's not that hard to do.

The issue with the compiler trying to understand what you are doing results in ambiguities in other places. What does this mean?

int i = "1" + "2"; // i == 3 or 12?

These kinds of things are avoided, all by having a simple requirement that you use the to!() function.

i = cast( int ) "0"; // i = 48 ( If I read the utf8 table correctly )

i = '0';
or
i = cast(int) '0';

works.  Not sure of the first, but the second definitely.

-Steve

Reply via email to