在rust里这行代码为什么报错。
fn main() {
let list = [1,2,3,4];
fn a(){
let s = list;
}
a();
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
fn main() {
let list = [1,2,3,4];
fn a(){
let s = list;
}
a();
}
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
挺常见的闭包问题,Rust 比较特殊,跟其他语言不太一样,这里的
fn a()
内部是访问不到外部的list
变量的。没发现编译器会有一句修改提示的么:
需要改成:
fn a()
是定义一个函数,函数无法捕获环境。参看:闭包:可以捕获环境的匿名函数