Hacker News new | past | comments | ask | show | jobs | submit login

In fact you just want:

    let numbers: ~[int] = ~[1,2,3];
When you allocate a vector on the heap, you don't need to specify the size.



I was thinking you might have a function that operates on some fixed length vector.

For e.g: `fn foo(bar: ~[int, ..3]) { ... }`, and the compiler would enforce that you only pass vectors of length 3 to that function.

But since I can't get `~[int, ..3] = ~[1,2,3]` (etc.) to compile that seems to be impossible w/ vectors on the heap?


It's a bug. Sorry about that. For now, write the type as `~([int, ..3])`.


I stand corrected -- thanks, didn't realize that you could have a pointer to a fixed-length vector.


I believe you can't do that. You can, however, make a function that only operates on 3-tuples:

fn foo(bar: (int, int, int)) { ... }




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: