小编ygg*_*gie的帖子

在模板中具有关联类型的特征

我在编译Rust代码时遇到了问题,我设法将问题归结为这个代码片段:

use std::slice::Iter;

pub trait Foo<'a> {
    type Bar: Iterator<Item=&'a usize>;

    fn make(&self) -> usize;
}

pub struct Juice;

impl <'a> Foo<'a> for Juice {
    type Bar = Iter<'a, usize>;

    fn make(&self) -> usize { 0us }
}


// Uncomment this line to break things
// fn get_int<'a, T: Foo<'a>>(t: T) -> usize {
//   t.make()
// }


fn main() {
    println!("Hello, {:?} world!" , Juice.make());
}
Run Code Online (Sandbox Code Playgroud)

我很确定我只是遗漏了一些东西,我需要做些什么来使这个特性发挥作用?我正在使用最新的每晚alpha版本(在撰写本文时):

rustc 1.0.0-nightly (458a6a2f6 2015-01-25 21:20:37 +0000)
Run Code Online (Sandbox Code Playgroud)

rust

3
推荐指数
1
解决办法
210
查看次数

标签 统计

rust ×1