簡體   English   中英

Rust -- 如何從 HashMap 返回值

[英]Rust -- how to return a value from a HashMap

這是一個小function:

pub fn test_return_value() -> Box<dyn RoomInterface> {
    let mut r = HashMap::<String, Box<dyn RoomInterface>>::new();
    // blah blah blah, do stuff with the HashMap
    r.get("test_key").unwrap()
}

這不會編譯並說:

37 |     pub fn test_return_value() -> Box<dyn RoomInterface> {
   |                                   ---------------------- expected `Box<(dyn room::RoomInterface + 'static)>` because of return type
38 |         let mut r = HashMap::<String, Box<dyn RoomInterface>>::new();
39 |         r.get("test_key").unwrap()
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Box`, found reference

這個錯誤是什么意思? 如何返回存儲在 HashMap 中的值?

使用remove而不是get幫助

暫無
暫無

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

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