[英]Rust clone/ copy issues
試圖圍繞如何在 egui 中進行一些簡單的繪圖。 我在 myapp 結構中有一個數據成員,它是 Vec::<Value>。
有沒有辦法將它傳遞到 Points::new(Values::from_values(data.to_vec()) 而不創建值的副本?示例通常是動態生成的,但是從光盤和解析每一幀的文本數據。
struct MyApp {
data: Vec<Value>,
}
myplot.show(ui, |plot_ui| {
let points = Points::new(Values::from_values(data.to_vec()));
plot_ui.points(points);
但是從光盤讀取並解析每一幀的文本數據感覺有點過分。
您不必(也不應該)每幀都這樣做。 解析一次並將結果存儲在持久結構中,並在show
結束期間從那里復制。
也就是說,看起來您確實需要每幀創建一個新的Points
object,因為plot_ui.points
按值獲取點 object。 你現在做的方式——存儲一個Vec<Value>
並在每一幀克隆它——可能是你會得到的最好的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.