8得票3回答
为什么Rust忽略了对&str的生命周期检查?

fn main() { let strA = "a"; let result; { let strB = "abc"; result = longest(strA, strB); // Will return strB } ...

11得票1回答
Rust参考在仍被借用时被放弃

问题:我在一个方法中收到了一个错误信息 "XXXXXXX 在还未归还的情况下被放弃",其中 XXXXXXX 有效期到方法的末尾(这是可以接受的),但 Rust 不必要地期望它能够与输入引用一样长寿,因为这些引用具有显式生命周期。 以下是一些设置信息:我有一个结构体,它可以迭代文本内容中找到的...

11得票1回答
返回依赖于函数内分配的数据的惰性迭代器。

我是新手,正在阅读《Rust编程语言》一书,其中在“错误处理”章节有一个“案例研究”,描述了使用csv和rustc-serialize库(使用getopts进行参数解析)从CSV文件中读取数据的程序。 作者编写了一个名为search的函数,该函数使用csv::Reader对象遍历csv文件的...

8得票1回答
异常对象生命周期

我想知道异常对象是如何创建的?为什么处理函数的参数可以是非const引用? 例如: class E{ public: const char * error; E(const char* arg):error(arg){ cout << "Con...

9得票3回答
在作用域内引用生命周期不正确(比正确的寿命长)的内容,这样可以吗?

拥有一个引用&'a T是否会立即导致未定义行为(UB),如果'a大于所引用的类型T的值,还是只要它没有超出类型T的生命周期就可以拥有这样的引用呢? 作为比较:即使您从未访问返回的值,mem::transmute::<u8, bool>(2)也会立即导致UB。 如果具有值0的...

9得票1回答
什么是具有生命周期参数的特征?

我了解生命周期参数如何应用于函数和结构体,但是一个trait有生命周期参数是什么意思呢?它是一种快捷方式,将生命周期参数引入到其方法中,还是其他什么东西呢?

29得票2回答
<'a, 'b: 'a>的意思是'b的生命周期必须比'a的生命周期长吗?

我希望实现一个类似于标准库定义的调试 构建器 的构建器。它们使用类似以下结构定义: struct DebugFoo&lt;'a, 'b: 'a&gt; { fmt: &amp;'a mut std::fmt::Formatter&lt;'b&gt; } 由于我不理解表单&lt;'...

7得票2回答
使用str和String之间的互换

假设我正在尝试使用Rust和&amp;str进行高级零拷贝解析器,但有时我需要修改文本(例如实现变量替换)。我真的想做这样的事情: fn main() { let mut v: Vec&lt;&amp;str&gt; = "Hello there $world!".split_whi...

418得票5回答
C++函数中静态变量的生命周期是多久?

如果在函数的作用域中声明一个变量为static,它只会被初始化一次,并保留其值直到函数调用。那么它的生命周期是什么时候?它的构造函数和析构函数何时被调用?void foo() { static string plonk = "When will I die?"; }

14得票5回答
C++中类静态变量的生命周期是多久?

如果我有一个名为Test的类 ::class Test { static std::vector&lt;int&gt; staticVector; }; 静态变量 staticVector 何时被构造并何时被析构? 是在 Test 类的第一个对象实例化时,还是像常规静态变量一样? 只是...