问题标签 [rust]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
175 浏览

rust - 跨任务和闭包的 DuplexStream

我在生命周期和借来的积分方面遇到了麻烦。我已经阅读了手册和借用的指针教程,但是......我仍然被卡住了。

素描main.rs

素描repos.rs

当我编译这些模块时, main.rs 有以下错误:

我不太清楚如何声明我的 DuplexStreams 生命周期静态。或者这可能是 slurp_repos 函数类型的错误方法。

如果您想查看完整的上下文:

0 投票
4 回答
4268 浏览

multithreading - 在 Rust 中的线程之间共享可变变量

编者注:此代码示例来自 Rust 1.0 之前的版本,在语法上不是有效的 Rust 1.0 代码。

是否可以在 Rust 中的多个线程之间共享一个可变变量?鉴于以下情况:

我收到此错误:

错误

该变量只需要对生成的线程是只读的。该变量必须是可变的,因为我真正想做的是在多个线程之间共享一个 HashMap。据我所知,除非它是可变的,否则无法填充 HashMap。即使有办法做到这一点,我仍然有兴趣知道如何完成这样的事情。

谢谢!

0 投票
2 回答
6482 浏览

hashmap - 生锈的字符串键控HashMap?

我无法弄清楚如何以~str惯用的方式使用带有类型键的 HashMap。例如,

基于错误报告,我尝试了

但得到了

我真的不明白这最后一条信息;有人有建议吗?

0 投票
1 回答
1818 浏览

rust - 未解决的导入:`std::num` 中没有`atan`

我正在从 Rust 教程构建示例。当我尝试编译这个例子时:

我得到了名义上的错误。我正在用rust build Test.rs. 为什么编译器找不到std::num::atan

0 投票
1 回答
1047 浏览

rust - 不可变字段和生命周期不匹配

鉴于此代码(也在此处):

我遇到了第 15-17 行的问题。

对于第 15 行和第 16 行,有人可以解释更改这两个变量的最佳方法是什么吗?看来我要么没有使用self正确,要么我错过了mut某个地方。

对于第 17 行,它给了我一个lifetime mismatch,还说:

不匹配的类型:预期 '&Vector2' 但找到了 '&Vector2'...在 14:41 在块上定义的匿名生命周期 #1 不一定比在 14:41 在块上定义的匿名生命周期 #2 长。

有谁知道解决这两个问题的任何方法?

0 投票
1 回答
597 浏览

rust - 在 for 循环中使用拥有的指针访问枚举的内容

对于代码:

我收到以下错误:

如果我将字符串更改为 int,则它可以正常编译。

我的问题是:如何在 for 循环中访问枚举中拥有的指针的内容?我应该使用备用迭代器吗?

我使用的 Rust 版本是从 master 编译的。

0 投票
1 回答
522 浏览

testing - 对 crate 中的模块运行测试

我正在编写一个由分布在多个文件中的多个模块组成的板条箱。这些模块是相互依赖的,即一些模块使用这个 crate 中的其他模块。

是否可以在这些模块中与板条箱中的其他模块分开运行测试?如果包含对该 crate 中其他模块的引用,则运行rust test some_module.rs不起作用。some_module.rs运行rust test my_crate.rc确实有效,但它从所有 crate 模块运行测试,这不是我想要的。

0 投票
2 回答
138 浏览

pointers - 奇怪的借款检查失败

我大致有以下代码:

它失败并显示以下消息:

我可以通过以下代码解决此问题:

但为什么会失败?可变指针和不可变指针的作用域是不同的,它们是不同的表达式。对我来说,这看起来像是一种错误,但我只是想确保我没有在这里遗漏任何东西。

0 投票
2 回答
1643 浏览

berkeley-db - 将 Rust 与 Berkeley DB 连接

我有一个使用 Berkeley DB 作为存储后端的现有 C++ 程序。我想用 Rust 重写它。有没有办法在 Rust 中编写一个外部函数接口来使用 Berkeley DB?我找到了教程Rust Foreign Function Interface,但对于 BDB 中使用的复杂 C 结构来说,这似乎太简单了;例如,要打开一个数据库,我需要声明一个 DB 结构并调用DB->open(). 但我不知道如何使用教程中显示的示例来做到这一点。

有人能帮忙吗?

0 投票
1 回答
831 浏览

rust - 如何捕获可变变量?

如何捕获可变变量?

我也尝试让这些函数成为方法,但后来一切都崩溃了,因为它试图将自己移动到闭包中

有我可以使用的 self 参数吗?因为 gm 本身应该在闭包中可用