【ハルシオンブログ】out修飾子のあるメソッドを作る
こんにちは。
大坂です。
今日から6月ですね。今年ももう半年終わりそうです…。
ポケットガール~受け継がれし希望~よろしくお願いします。
URL(Android):https://play.google.com/store/apps/details?id=com.halcyon.pocketgirl3
URL(iOS):https://itunes.apple.com/jp/app/id1539553611
PV:
DictionaryのTryGetValueみたいなことを自分でしたいときのお話。
DictionaryのTryGetValue。
keyに含まれていたらboolを返却してくれて、outで対応したvalueを受け取れるメソッド。
こんなことを自分で作ったメソッドでもやりたいときは、メソッドにout修飾子を追加してあげればできます。
out修飾子のメソッドを作ってみる。
メソッドの中でout修飾子の変数に値を入れてあげれば呼び出し側で受け取れます。
呼び出し側

引数が「1」の時だけちゃんとifの中に入ってログが流れますね。
簡単な構成ならDictionaryとか使ってできますが、複雑な条件でで判定したい場合はこの方法で使うと比較的わかりやすくかけるので便利ですね!
ではではノシ
大坂です。
今日から6月ですね。今年ももう半年終わりそうです…。
ポケットガール~受け継がれし希望~よろしくお願いします。
URL(Android):https://play.google.com/store/apps/details?id=com.halcyon.pocketgirl3
URL(iOS):https://itunes.apple.com/jp/app/id1539553611
PV:
DictionaryのTryGetValueみたいなことを自分でしたいときのお話。
DictionaryのTryGetValue。
Dictionary testDic = new Dictionary() { { 1, "test_1" }, { 2, "test_2" }};
if(testDic.TryGetValue(1, out var test))
{
Debug.Log(test);
}
keyに含まれていたらboolを返却してくれて、outで対応したvalueを受け取れるメソッド。
こんなことを自分で作ったメソッドでもやりたいときは、メソッドにout修飾子を追加してあげればできます。
out修飾子のメソッドを作ってみる。
private bool TryCheckTest(int index, out string test)
{
test = null;
if(index >= 1 && index < 10)
{
test = "テスト";
return true;
}
else
{
return false;
}
}
メソッドの中でout修飾子の変数に値を入れてあげれば呼び出し側で受け取れます。
呼び出し側
if(TryCheckTest(1, out string test_1))
{
Debug.Log("引数:1:" + test_1);
}
if (TryCheckTest(10, out string test_2))
{
Debug.Log("引数:10:" + test_2);
}

引数が「1」の時だけちゃんとifの中に入ってログが流れますね。
簡単な構成ならDictionaryとか使ってできますが、複雑な条件でで判定したい場合はこの方法で使うと比較的わかりやすくかけるので便利ですね!
ではではノシ
Category: 開発日記(Unity)
« 【ハルシオンブログ】Unityのバージョン上げたらビルド時に「Building scene 0:」から進まなくなった件。 | 【ハルシオンブログ】Unity Updateの中でGetComponentをしてはいけませんよ?っていう基本の話 »
コメント
| h o m e |