访问rust的std库常量

Vic*_*ory 2 rust

我试图获得pi/2我在官方文档和代码1中可以看到的"std"值.

我尝试了下面的变化,但没有运气

let p2: f64 = std::f64::FRAC_PI_2; // fixme
let p2: f64 = std::f64::frac_pi_2(); // fixme
let tmp: f64 = 1.0; // tmp variable
let p2: f64 = tmp.frac_pi_2(); // fixme
let p2: f64 = 3.1415926536897932384626/2.0; // what my current code does now
Run Code Online (Sandbox Code Playgroud)

我认为有一些关于如何使用consts文字和std库的基本内容我并不是很吵.

PS

这是我第一次尝试实施cordic方法的生锈程序的一部分,因为我在SO上的最后几个问题,代码位于此处.

Dog*_*ert 5

该特征frac_pi_2存在于std::num::Float特征中.你可以这样称呼它:

let p2: f64 = std::num::Float::frac_pi_2()
Run Code Online (Sandbox Code Playgroud)

或者,此常量也存在std::f64::consts::FRAC_PI_2,您可以直接使用.

码:

fn main() {
    let p2: f64 = std::num::Float::frac_pi_2();
    println!("{}", p2)
    println!("{}", std::f64::consts::FRAC_PI_2);
}
Run Code Online (Sandbox Code Playgroud)

输出:

1.570796
1.570796
Run Code Online (Sandbox Code Playgroud)

演示

  • `std`是**箱子**.`f64`是`std` crate根部的**模块**.`consts`是`std :: f64`模块中的内部模块.有关详细信息,请参阅[Crates and Modules Guide](http://doc.rust-lang.org/guide-crates.html). (3认同)