簡體   English   中英

Rust 類型 + 壽命的總和是多少?

[英]What are sum of Rust types + lifetime?

有一個特點可以做到這一點:

pub trait Device<'a> {
    type RxToken: RxToken + 'a;
    type TxToken: TxToken + 'a;

這是什么意思? 為什么不type RxToken: RxToken<'a>

讓我們看一個例子:

trait SayHello {
    fn say_hello(&self);
}

pub trait Device<'a> {
    type MyType : SayHello + 'a;
}

如您所見, SayHello本身對生命周期約束一無所知,但MyType被約束以滿足SayHello並且必須在生命周期'a內有效。

相反,考慮

trait SayHello {
    fn say_hello(&self);
}

pub trait Device2<'a> {
    type MyType : SayHello;
}

在這里, Device2MyType沒有生命周期要求——它只需要滿足SayHello即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM