ראסט עם דוגמאות: טיפוסים בסיסיים

examples/rust-by-example-primitives/src/main.rs

#![allow(unused_variables)]
#![allow(unused_mut)]
#![allow(unused_assignments)]

fn main() {
    // Variables can be type annotated.
    //let logical: bool = true;
    let logical = true;
    dbg!(logical);

    let a_float: f32 = 1.0;  // Regular annotation
    let b_float = 1.0;  // Regular annotation
    let b_float = 1.0f32;  // Regular annotation
    let an_integer   = 5i8; // Suffix annotation

    // Or a default will be used.
    let default_float   = 3.0; // `f64`
    let default_integer = 7;   // `i32`

    // A type can also be inferred from context.
    let mut inferred_type = 12; // Type i64 is inferred from another line.
    inferred_type = 4294967296i64;
    //inferred_type = 23i32;

    // A mutable variable's value can be changed.
    let mut mutable = 12; // Mutable `i32`
    mutable = 21;

    // Error! The type of a variable can't be changed.
    //mutable = true;

    // Variables can be overwritten with shadowing.
    let mutable = true;

    /* Compound types - Array and Tuple */

    // Array signature consists of Type T and length as [T; length].
    let my_array: [i32; 5] = [1, 2, 3, 4, 5];

    // Tuple is a collection of values of different types 
    // and is constructed using parentheses ().
    let my_tuple = (5u32, 1u8, true, -5.04f32);
}

דפים קשורים

ראסט עם דוגמאות

Author

גאבור סבו (szabgab)

גאבור סבו, יוצר התוכן באתר הזה מלמד תכנות כבר 25 שנים. בתקופה האחרונה זה בעיקר הדרכות בראסט ובפייתון בחברות היי-טק.

גאבור גם מלמג קורס פייתון במכון וויצמן לסטודנטים למדעים מדויקים כגון ביולוגיה וכימיה לתואר שני ושלישי.

גאבור סבו