はじめに
この実験では、Rust の生の識別子について学びます。これにより、通常許可されない状況(変数名や関数名など)でキーワードを識別子として使用できるようになります。特に、古い Rust のバージョンが新しいキーワードと競合する場合に役立ちます。
注: 実験でファイル名が指定されていない場合は、好きなファイル名を使用できます。たとえば、
main.rs
を使用して、rustc main.rs &&./main
でコンパイルして実行できます。
This tutorial is from open-source community. Access the source code
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
この実験では、Rust の生の識別子について学びます。これにより、通常許可されない状況(変数名や関数名など)でキーワードを識別子として使用できるようになります。特に、古い Rust のバージョンが新しいキーワードと競合する場合に役立ちます。
注: 実験でファイル名が指定されていない場合は、好きなファイル名を使用できます。たとえば、
main.rs
を使用して、rustc main.rs &&./main
でコンパイルして実行できます。
多くのプログラミング言語と同様に、Rust には「キーワード」の概念があります。これらの識別子は言語にとって何かの意味を持っており、変数名や関数名などの場所では使用できません。生の識別子を使うと、通常許可されない場所でキーワードを使用できるようになります。これは、Rust に新しいキーワードが導入され、古い Rust のバージョンを使用しているライブラリに新しいキーワードと同じ名前の変数や関数がある場合に特に役立ちます。
たとえば、2015 年版の Rust でコンパイルされたクレート foo
が、try
という名前の関数をエクスポートしているとしましょう。このキーワードは 2018 年版の新機能に予約されており、生の識別子がなければ、この関数を命名する方法がありません。
extern crate foo;
fn main() {
foo::try();
}
このエラーが表示されます:
error: expected identifier, found keyword `try`
--> src/main.rs:4:4
|
4 | foo::try();
| ^^^ expected identifier, found keyword
生の識別子を使ってこれを書くことができます:
extern crate foo;
fn main() {
foo::r#try();
}
おめでとうございます!あなたは生の識別子の実験を完了しました。あなたのスキルを向上させるために、LabEx でさらに多くの実験を行って練習してください。