小编Pow*_*rce的帖子

闭包中的可变性问题

我真的不知道如何克服这个问题.据我所知,它words被移入封闭(这对我来说很好,它是唯一可以在此之后使用的地方),但需要根据而来typed_some.错误提示听起来像一个体面的想法,只是该部分在一个库中,我不知道它是否是他们可以实现的东西.
on_edit文档.

extern crate cursive;
extern crate rand;

use cursive::Cursive;
use cursive::views::{Dialog, TextView, EditView, LinearLayout};
use cursive::traits::Identifiable;
use rand::Rng;

fn main() {
    // This really messes with stdout. Seems to disable it by default but when
    // siv is running println prints in random places on the screen.
    let mut siv = Cursive::new();
    siv.add_global_callback('q', |s| s.quit());

    let mut words = WordBar::new();

    siv.add_layer(Dialog::around(LinearLayout::vertical()
            .child(TextView::new(words.update_and_get_bar()).with_id("target_field"))
            .child(EditView::new()
                .on_edit(move |s, input, _| words.typed_some(s, input))
                .with_id("input_field")))
        .title("Keyurses")
        .button("Quit", |s| s.quit())); …
Run Code Online (Sandbox Code Playgroud)

closures mutable rust

3
推荐指数
1
解决办法
410
查看次数

标签 统计

closures ×1

mutable ×1

rust ×1