码迷,mamicode.com
首页 > 其他好文 > 详细

Rust <8>:lifetime 高级语法与 trait 关联绑定

时间:2018-02-14 00:19:39      阅读:37      评论:0      收藏:0      [点我收藏+]

标签:outline   引用   data   display   情况   splay   isp   语法   life   

一、生命周期关联:如下声明表示,‘s >= ‘c

struct Parser<c, s: c> {
    context: &c Context<s>,
}

二、泛型生命周期绑定

struct Data<a, T: a>(&a T)

对于含有泛型引用成员的结构体,因为 T 本身可能是引用甚至是多层引用,为保证在 T 本身为引用的情况下 lifetime 不短于结构体的限制,必须同时指定 T 类型自身的 lifetime

三、如下 trait 定义方式,相当于为 trait 自身定义了 trait bound,即:实现 OutlinePrint 的实例,必须也同时实现 fmt::Display

trait OutlinePrint: fmt::Display {
    fn outline_print(&self) {
    }
}

...

Rust <8>:lifetime 高级语法与 trait 关联绑定

标签:outline   引用   data   display   情况   splay   isp   语法   life   

原文地址:https://www.cnblogs.com/hadex/p/8447668.html

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!