diff --git a/JLsgl.md b/JLsgl.md index e87c65f0..813185e5 100644 --- a/JLsgl.md +++ b/JLsgl.md @@ -143,6 +143,32 @@ Assert一般用於寫程式debug,它不能解釋拋出異常的原因。 名字一樣的函數,輸入參數類型不同時,可以同時存在會被視為不同的函數。 +### 2024.10.16 +17章節中, +庫合約是為了提升Solidity代碼的複用性和減少gas,而存在的一種特殊合約。 + + +與一般合約有以下幾點差異: + +1. 不能存在狀態變數 + +2. 不能夠繼承或被繼承 + +3. 不能接收乙太幣 + +4. 不可以被銷毀 + + + +常用的庫合約有: + +1. Strings:將uint256轉換為String + +2. Address:判斷某地址是否為合約地址 + +3. Create2:更安全的使用Create2 EVM opcode + +4. Arrays:跟數組相關的庫合約