メモ書き~Generic.Dictionary
//
https://msdn.microsoft.com/ja-jp/library/xfhwa508(v=vs.110).aspx
using System.Collections.Generic;
これを書かないと、使えない。
Dictionary<ENUM, int> itemBag = new Dictionary<ENUM, int>();
これで itemBag という Dictionary を初期化することができる。
使い方はその時々で調べるよ!そのうち覚えるさ!
こんな感じで、今持っているアイテムとその数を保持しようと思って、いろいろ試行錯誤してみた。これきたでしょって思ったやり方が実際は全然だめだったコードがこちら
int[] i=new int[ENUMの数]; itemBag.add("ENUM.ITEM1",i[ENU.ITEM1]); //問題のコード if(アイテム1を拾った) i[ENUM.ITEM1]++;
Dictionary のところにはポインタ的な何かが入ると考え、ポイント先の値を増やせば所持数も増えるだろうと思ったのですが、増えず。。。
正しくはこうするべきでした。
itemBag[ENUM.ITEM1]++; //または itemBag[ENUM.ITEM1]=3;
itemBag[ENUM.ITEM1]をすると、一緒に保存されている int の値が受け取れるのですが、それをインクリメント、もしくは値を代入してやれば、そのキーに対応した値が書き換わるらしいです!