【C#】stringクラスのインスタンス作成

C#のStringクラスは、文字列を表すクラスです。インスタンスは、以下のように作成することができます

string myString = "Hello, World!";

クラスとしてインスタンスを作成するコード

また、新しいインスタンスを作成し、それに文字列を代入することもできます

string myString = new string("Hello, World!");

Stringクラスは、文字列の比較、結合、検索などの機能を持っています

IL(中間言語:Intermediate Language)では、次のようになります

C#では、IL (Intermediate Language) と呼ばれる中間言語にコンパイルされます。この中間言語は、.NETや..NET Frameworkで実行されるクロスプラットフォームのバイトコードです。

ILでは、新しいインスタンスの生成には、newobj命令が使用されます。 newobj命令は、コンストラクタを呼び出し、新しいインスタンスを生成します。

以下は、C#コードで「Hello, World!」という文字列を持つ新しいインスタンスを生成するILコードの例です。

IL_0000: ldstr "Hello, World!"
IL_0005: newobj instance void [mscorlib]System.String::.ctor(string)
IL_000a: stloc.0

ここで、ldstr命令は文字列リテラルをスタックに積み、newobj命令は、スタックに積まれた文字列を引数にして、Stringクラスのコンストラクタを呼び出し、新しいインスタンスを生成します。最後にstloc.0命令は、生成したインスタンスをローカル変数に格納します。

C#,学習,設計

Posted by hidepon