午後の部、遅くなりましたが更新いたします。今日は娘を見ながらの更新になりますので、遅くなってしまったら申し訳ないです。メモリこのチャプター名面白いですよねwストレージは保存できる場所であって、メモリは作業する机みたいなイメージ、CPUはその机を使って作業する脳みたいなイメージ、とパソコンを触る時に覚えましたwイメージ的には同じような感じだけど、、、Storageはブロックチェーン上に永久に刻まれる(格納される)変数で、Memoryは一時的にしか使われないもののための変数、ってことね。Memoryだから、作業領域として使われるメモリってこと。頻繁にデータは書き換えられ、電源を落とすと作業してた一時的なデータも消えるんですな。違う処理を始めたら前の情報は書き換えられちゃうよって事で、保存としては使えないってイメージですね。Memoryだから、読み出ししかできないメモリの事を言います。書き込むことはできないメモリなので参照しかできませんよ、ということですね。ファミコンのソフトはこのROMに当たりますね。パスワードを入れると、その続きからできるという、、、懐かしいw脱線しちゃいましたね、続きに戻りますwここでは、StorageかMemoryかの判定はSolidityが判定してくれるとのことなので別段使う必要はないとの事!関数外で宣言された変数に関しては、Storageで、ブロックチェーン状に格納される。関数内で宣言された変数はMemoryとして扱われるので、呼び出しが終わったら消えると。判定は必要ないけど、使う例があるとの事でこちらに添付!説明文長いため、尻切れとんぼちゃん、、Sandwichは今までやってきたので言うとZombieという事になりますね。sandwichesはZombiesですね。最初の//の文章は、このコードを入力してもいいけど、Solidityがストレージなの?メモリなの?と聞いてくるのでどっちかはっきり宣言してよ!という警告を出してくるとの事。聞いてきたら換えてやればいいのですが、そうなる前に指定してやりましょう。入れ方は名前の前にstorageやmemoryを入れてやるだけですね。最後のコードはmemoryのデータをstorageに変更したい場合の方法が書いてます。使わなそうなので流す程度で読んでいます。やって言ってくれてますし、、、宣言する必要がある時がある、とだけ覚えておきましょうwそれではテストに挑戦しましょ!!1では、feedAndMultiplyという関数を作成せよ。2では、requireステートメントを追加してmsg.senderがこのゾンビのオーナーであるかを確認せよ。事ですので、requireの使い方を思い出してくださいね。そもそも関数内で何かしらの確認をする場合はrequireを使う、と思い出しましょう。zombieToOwner[_zombieId]);となる。msg.sender」でもOKですが、回答としては不正解になってしまいますので、上記のように入力してください。CryptoZombies上では不正解ですが、Solidityとしては正解って事です。3の文章ですが、このまま読むと私みたいな頭の弱い人だと何が何だかわからなくなるので、何個かに分けて考えてみましょう。1myZombieという名前のローカルZombie(storageポインタとする)を関数で宣言する。myZombieになりますね。例を参照してこのような形にするというのを覚えましょう。次に、、2この変数をzombies配列内の_zombieIdインデックスと同じにせよ。zombies[_zombieId];}となります!ふぅ〜無事にクリアできましたね!!やっていくうちに少しずつではありますが、理解が深まってきているような気がします。この調子で頑張って行きましょう!!途中、娘がう◯こをしてしまったので、オムツ交換したら、またすぐこれでもかってくらいの、巨大なう◯こをした事もあり、だいぶ遅くなってしまった、、、w集中してできないけど、後ろでテクテク歩いたり、ドタバタしているのを感じながらやるのって、なかなか幸せを感じれますwこんなところで今日のところは終了したいと思います。このブログでは主に読書した内容を元に、「ヒラメキを発信する」をテーマとして毎日更新しています。役に立ってくれると嬉しいです。