はじめに
前回の記事の続きになります。
今回は、サンプルコードを使って基本ルールを確認していきます。
サンプルコード
公式ドキュメントに記載のある Hello World プログラム
fn main() {
// 世界よ、こんにちは
println!("Hello, world!");
}
ルール1:関数の書き方
- fn main() {} は Rust のエントリーポイント。必ず最初に実行される関数。
- {} で囲まれた中が関数の本体。
- Rust では波括弧 {} の前にスペースを入れ、同じ行に置くのが推奨スタイル。
ルール2:インデント
- Rustのスタイルは、タブではなく4スペースでインデントする。
※ Pythonの文法ルールとは違い、Rustのインデントは可読性を考慮して推奨されているということ。
ルール3:マクロ呼び出し
- println! は 関数ではなくマクロ。
- ! がついているのがマクロ呼び出しの目印。
- ここでは「普通の関数ではない」とだけ覚えておけばOK。
そもそもマクロって何?
関数: 決まった引数を受け取って、処理をするもの
マクロ: コードを「展開」してからコンパイルするもの(コードを生成する仕組みに近い)
println!("Hello"); // 単純に文字列
println!("Hello, {}", "Rust"); // {} が "Rust" に置き換わる
上記の例だと、与えられた文字列をそのまま出すだけでなく、
フォーマット {} を展開してくれたり、引数の数が違ってもエラーにならずにコンパイル時に検査してくれます。
ルール4:コードの終わり
- Rustの文は基本的に ;(セミコロン)で終わる。
参考サイト