我正在使用newtype,包装整数数组:
struct Foo([int, ..5]);
Run Code Online (Sandbox Code Playgroud)
显然,因为我不能简单地这样做:
let foo = Foo([1,2,3,4,5]);
let bar = foo[2];
Run Code Online (Sandbox Code Playgroud)
我访问包装数组的准确程度如何?
有一个半(很快将是两种)方式:
#![feature(tuple_indexing)]
struct Foo([int, ..5]);
fn main() {
let foo = Foo([1,2,3,4,5]);
let Foo([_, foo_1, ..]) = foo;
let foo_3 = foo.0[3];
println!("[_, {}, _, {}, _]", foo_1, foo_3);
}
Run Code Online (Sandbox Code Playgroud)
具体来说,tuple_indexing很快就可能没有门控,因此您不需要feature使用该属性来使用它.
基本上,Foo是一个元组结构 ; 也就是说,它的行为或多或少就像一个碰巧有名字的元组.
| 归档时间: |
|
| 查看次数: |
992 次 |
| 最近记录: |