timezone |
---|
Asia/Shanghai (UTC+8) |
-
Hi我是k66,這是我第一次參加殘酷共學,一起衝鴨🦆
-
你认为你会完成本次残酷学习吗?我會努力完成!
學習內容: Hello Web3
: 本堂課第一支程式
Solidity
: 用於EVM的程式語言Remix
: Solidity的IDE- Solidity程式架構:
1.註解Licence
、2.Solidity版本號
、3.contract相當於main
以下是實際寫碼+編譯過程:
1.遇到錯誤->請AI提示->原本要照AI(左下角有RemixAI)提供的程式碼做(螢光綠處)->但發現錯誤其實來自少一字母r於是選擇不照AI的建議而是修正typo 2.編譯成功後,出現這些檔案(紅括號處) 3.部屬合約前發現設定檔預設和教程有些不同(比如教程VM分支是merge但目前預設是坎昆) 4.順便查了除了坎昆,也支援L2的Optimism和Arbitrum
學習內容: 2.ValueTypes
- 三種類型:Value Type, Reference Type, Mapping Type
- 與C語言寫法不同的是int寫在public前,如
int public _int = -1;
- 常見Value type: bool, int, uint, uint256, address, address payable, bytes(可變), bytes1, bytes8, bytes32, enum
學習內容: 3.function
這集對我來說單看有點難理解(碧琪公主那我看不懂), 看這篇才懂
pure
、view
是為取代constant
(到v0.4.17才取代)。 此外internal
、external
蠻好懂。
學習內容: 4.Return
分
returns
和returns
,後者和其他程式語言類似,前者跟在函數名後面。 特別的寫法,解構式賦值:(, _bool2, ) = returnNamed();