やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Rustの構造体(プログラム例)

 お題:幅と高さから面積を求めるプログラムを書け。

成果物

参考

やってみる

  1. main関数内だけで
  2. 面積を返す関数をつくる
  3. 関数の引数をタプルに
  4. 関数の引数を構造体に

 上記のように少しずつリファクタリングしていく感じだった。復習には丁度よさそう。

コード

fn main() {
    let rect = Rectangle { width: 3, height: 4 };
    println!("w: {} h: {} area: {}", rect.width, rect.height, area(&rect));
    println!("rect: {:?}", rect);
    println!("rect: {:#?}", rect);
}
#[derive(Debug)]
struct Rectangle {
    width: u32,
    height: u32,
}
fn area(rect: &Rectangle) -> u32 { rect.width * rect.height }

対象環境

$ uname -a
Linux raspberrypi 4.19.42-v7+ #1219 SMP Tue May 14 21:20:58 BST 2019 armv7l GNU/Linux

前回まで