相关疑难解决方法(0)

什么是Rust中的“胖指针”?

我已经在多个上下文中阅读过“胖指针”一词,但是我不确定它的确切含义以及何时在Rust中使用它。该指针似乎是普通指针的两倍,但我不明白为什么。它也似乎与特征对象有关。

pointers rust

64
推荐指数
1
解决办法
3661
查看次数

为什么特征中的泛型方法需要调整特征对象的大小?

我有这个代码(游乐场):

use std::sync::Arc;

pub trait Messenger : Sync + Send {
    fn send_embed<F: FnOnce(String) -> String>(&self, u64, &str, f: F)
        -> Option<u64> where Self: Sync + Send;
}

struct MyMessenger {
    prefix: String,
}
impl MyMessenger {
    fn new(s: &str) -> MyMessenger {
        MyMessenger { prefix: s.to_owned(), }
    }
}
impl Messenger for MyMessenger {
    fn send_embed<F: FnOnce(String) -> String>(&self, channel_id: u64, text: &str, f: F) -> Option<u64> {
        println!("Trying to send embed: chid={}, text=\"{}\"", channel_id, text);
        None …
Run Code Online (Sandbox Code Playgroud)

generics rust

9
推荐指数
3
解决办法
4527
查看次数

标签 统计

rust ×2

generics ×1

pointers ×1