フォーマット文字列で変数名をそのまま書けるぞ!
目次
Rust 1.58 の深堀り
いつも丁寧にリリース内容をまとめてくれているので、以下の記事がとても参考になります!
OPTiM TECH BLOG
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUAAAAC0AQAAAADNn8i8AAAAAnRSTlMAAHaTzTgAAAAeSURBVFjD7cExAQAAAMKg9U9tDQ+gAAAAAAAAAH4NHNQAARczmc0AAAAASUVORK5CYII=)
![](https://cdn-ak.f.st-hatena.com/images/fotolife/o/optim-tech/20220113/20220113181507.png)
Rust 1.58を早めに深掘り – OPTiM TECH BLOG
フォーマット文字列で変数を直接参照できるようになったRust 1.58の変更点を詳しく紹介します。
フォーマット文字列で変数を直接参照できる
Rust 1.58
format!
やprintln!
などフォーマット系のマクロで変数を直接参照できるようになり、println!("{x}")
と簡単に書くことができます。
fn main() {
let age = 10;
println!("Taro is {age} years old.");
}
Rust 1.57 以前
上記処理は以下のように実装する必要がありました。
fn main() {
let age = 10;
// パターン1
println!("Taro is {} years old.", age);
// パターン2
println!("Taro is {age} years old.", age = age);
}
式を展開できるようになるかも?
ただし指定できるのは識別子のみであり、式を指定することはできません。
https://tech-blog.optim.co.jp/entry/2022/01/14/080000
今後これを行えるようにしたいという議論も進行中です。
近い将来、以下のような文字列操作が可能になるかもしれません。
fn main() {
let age = 10;
println!("Taro is {age * 2} years old.");
}
まとめ
便利になりました!
Rustの進化は目覚ましいので、置いて行かれないようにしないといけませんね。
著:初田直也, 著:山口聖弘, 著:吉川哲史, 著:豊田優貴, 著:松本健太郎, 著:原将己, 著:中村謙弘, 著:フォルシア株式会社
¥3,208 (2024/07/25 14:00時点 | Amazon調べ)
![](https://dottrail.codemountains.org/wp-content/plugins/pochipp/assets/img/pochipp-logo-t1.png)
コメント