我被::.之间的差别弄糊涂了.它们看起来一样,只是语法不同.

let mut guess = String::new();

io::stdin().read_line(&mut guess)
    .expect("Failed to read line");

"Programming a Guessing Game" from The Rust Programming Language

在上述情况下,我访问String中的函数new().String::new()String.new()之间有什么区别?.只适用于方法吗?

推荐答案

当左侧有一个值时,使用..::用于类型或模块.

或者:.表示值成员访问,::表示名称空间成员访问.

Rust相关问答推荐

如何在Rust中获得不可辩驳的'if let'模式警告Mutex锁定?""

从Rust调用C++虚拟方法即使在成功执行之后也会引发Access违规错误

Rust中的相互递归特性与默认实现

为什么复印是豆荚的一个重要特征?

使用 struct 外部的属性来改变 struct 的原始方式

rust 迹-内存管理-POP所有权-链表

如何点击()迭代器?

Rust&;Tokio:如何处理更多的信号,而不仅仅是SIGINT,即SIGQUE?

为什么将易错函数的泛型结果作为泛型参数传递 infer ()?不应该是暧昧的吗?

为什么实现特征的对象期望比具体对象有更长的生命周期?

如何从宏调用闭包?

write_buffer 不写入缓冲区而是输出零 WGPU

闭包返回类型的生命周期规范

中文优化标题:跳出特定循环并返回一个值

在多核嵌入式 Rust 中,我可以使用静态 mut 进行单向数据共享吗?

使用自定义 struct 收集 Vec

Rust 中 `Option` 的内存开销不是常量

如何在 Rust 中创建最后一个元素是可变长度数组的 struct ?

C++ 中的 CRTP 是一种表达其他语言中特征和/或 ADT 的方法吗?

在 Rust 中组合特征的不同方法是否等效?