Slices in D vs Go
Daniel Davidson
nospam at spam.com
Sat Oct 19 05:12:18 PDT 2013
On Saturday, 19 October 2013 at 12:08:49 UTC, Daniel Davidson
wrote:
> On Saturday, 19 October 2013 at 04:52:31 UTC, Jesse Phillips
> wrote:
>> Do to the recent slices discussion I did some investigation on
>> what is different in Go. Thus, created this
>>
>> http://he-the-great.livejournal.com/48672.html
>
> It starts with:
> int[] original;
> original.reserve(5);
> writeln("orig cap: ", original.capacity); // 7
> writeln("orig len: ", original.length); // 0
>
> Further down says: "But to discuss behavior we'll need some
> elements."
>
> and immediately proceeds with code accessing original where no
> data has been added:
>
> auto slice = original[1..$];
> writeln("slice cap: ", slice.capacity); // 6
> writeln("slice len: ", slice.length); // 2
> original[0]++;
> slice[0]++;
> slice[1]++;
> writeln("orig: ", original); // [1, 2, 3]
>
> I don't know where the [1,2,3] comes from. The first
> original[1..$] will crash. Maybe you are forgetting the actual
> initialization of original with data?
Ahh ok. You may want to point to the fact that you are referring
to a larger and complete code file linked at the bottom of the
page.
More information about the Digitalmars-d
mailing list