Rust

「Rust」標準出力でメッセージ出力し、改行せず標準入力を受け付ける方法「std::io::stdin::read_line,print!」

今回はRustで標準出力でメッセージ出力し、改行せず標準入力を受け付ける方法を紹介したいと思います。 結論 print!でメッセージを表示「要求」後にstd::io::stdout::flushでフラッシュで表示を行い、その後std::io::stdin::read_lineで標準入力を受け付けま…

「Rust」bin配下にアプリを配置しアプリ単体を実行する方法

今回はRustで開発する際にbin配下にアプリを配置しアプリ単体を実行する方法を紹介したいと思います。 結論 bin配下に作成したアプリをcargo run --bin アプリ名で対象のアプリ単体で実行できます。 例 アプリの作成 通常通りcargo new xxx(xxxは任意のアプ…

「Rust」cargo watchで変更を自動検知しホットリロード

今回はRustで開発する際に便利なツールcargo watchを紹介したいと思います。 cargo-watch GitHubリポジトリ インストール cargo install cargo-watch watch cargo watch -x run 実際に試す 簡単なWebアプリのサンプルコードで試してみました main.rs use act…

「Rust cargo-edit」cargo add で featuresも指定する

Rustのcargo-editの機能でCargo.tomlにcrateの設定などができます。その際に併せてfeaturesの設定をしたい場合もあります。今回はその方法を解説していきます。 方法 reqwestを追加し併せてfeaturesにblockingを追加する例 cargo add reqwest --features="bl…

「Rust」配列、スライス(Vector型)の数値での初期化

今回はRustで配列、Vectorで数値での初期化について解説します。 配列 コンパイル時にサイズが確定している必要があります。 OK fn func() { const SIZE: usize = 10; let array: [usize; 10] = [1; SIZE]; println!("{:?}", array); } [1, 1, 1, 1, 1, 1, 1…