Unity3DとC#の研究ノートの記録-使用法
目次
1.ブログ紹介
最近忙しいです。ブログを長く更新していません。年明けには更新率にゆっくりと返信します。年明けにはUnityフレームワークのコンテンツを徐々に改善していきます。その後、プラグインを更新します。時々ブログを学びます。新年を迎えます。もっと学び、記事を読んだすべての人が満足のいく結果を得られることを願っています。このブログは知識ポイントの学習記録として使用されます。一般的にはdllまたはモジュールを指します。過去2日間に見たことがあります。次のように一連のコードが使用されています。疑問があります。少し確認して、このレコードを作成しました。
using(ES2Reader reader = new ES2Reader(settings))
{
while(reader.Next())
headers[reader.currentTag.tag] = reader.ReadHeader();
}
2.コンテンツ
(1)機能
関数を簡単に紹介しましょう。Usingキーワードの後に括弧で囲まれたいくつかのクラスをインスタンス化してから、以下のメソッド本体でインスタンス化されたクラスを直接呼び出します。これらのクラスは、Usingメソッドの外部では呼び出すことができず、メソッドを使用します。実行が完了すると、クラスは自動的に解放されます。このインスタンスのクラスはIDisposableインターフェイスを継承する必要があることに注意してください。継承しないと、コンパイルできず、解放時にクラスによってオーバーライドされたDisposeメソッドが自動的に呼び出されます。
(2)簡単な例
まず、IDisposableインターフェイスから継承するクラスを作成し、open関数を追加します
public class Test1 : IDisposable {
public void PrintData(string str)
{
Debug.Log("--------------:"+str);
}
public void Dispose()
{
Debug.Log("释放Test1");
}
}
次に、使用で使用します
public class TestSave : MonoBehaviour {
void Start () {
using (Test1 test1 = new Test1())
{
test1.PrintData("This is a test1");
}
print("Using语句结束");
}
}
以下は出力です
(3)複数の引用例
を使用すると、1つの例だけでなく、複数の例を同時に参照できます。使用法は次のとおりです。
IDisposableインターフェースから継承する別のクラスを追加し、open関数を追加します
public class Test2 : IDisposable {
public void PrintData(string str)
{
Debug.Log("--------------:"+str);
}
public void Dispose()
{
Debug.Log("释放Test2");
}
}
次に、使用で使用します
public class TestSave : MonoBehaviour {
void Start () {
using (Test1 test1 = new Test1()) using(Test2 test2 = new Test2())
{
test1.PrintData("This is a test1");
test2.PrintData("This is a test2");
}
print("Using语句结束");
}
}
入力結果は次のとおりです。
注:ここで注意すべきことの1つは、リリースの順序が参照の順序と逆であり、最初に参照されたインスタンスが最後にリリースされることです。
3.プッシュ
Github:https://github.com/KingSun5
4.結論
ブロガーの記事がよく書かれていると思われる場合は、ブロガーに注意を払い、ブログ投稿を気に入ってください。また、ブロガーの能力は限られています。記事に誤りがある場合は、コメントして批判してください。 。
QQ交換グループ:806091680(中国人)
このグループは、CSDNブロガーのChinarによって作成されました。お勧めします。私もグループにいます!