庫(Libraries)
庫對于調(diào)用它的合約來說,有點像父合約,因為合約可以使用庫的所有函數(shù)。
但是庫會部署有地址,被繼承的父合約不會部署。
對比普通合約來說,庫的差異有:
- 無狀態(tài)變量(state variables)。
- 不能繼承或被繼承
- 不能接收ether
-
internal的庫函數(shù)對所有合約可見
附著庫(Using for)
指令using A for B;用來附著庫A里定義的函數(shù)到任意類型B。
其中,需要注意的是
-
B調(diào)用庫A的函數(shù),函數(shù)的第一個參數(shù)默認是B的實例。 -
using A for B;指令僅在當前合約的作用域有效