今天来介绍一个 Solidity 的另一个特别的东西 libraries。
下面来看看 library 的写法范例
// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.8.7;
//定义一个Math library ,里面有一个 add function。
library Math {
function Add(uint a, uint b) public view returns (uint c) {
return a+b;
}
}
contract Main {
function Test(uint a,uint b) public view returns (uint ){
// 这样就能直接调用 Math里的 Add function
uint c = Math.Add(a,b);
return c;
}
}
它的应用范围很广,可以把一些常用的东西抽象化成一个 library,也能减少重新部署程序码所需消耗的资源跟 Gas
,然後看它的调用方式,如果有写过 OOP 应该很熟悉,它就是 solidity 里的静态类别,它是不需要任何实体化动作,就能直接做调用。
libiary 会有几个限制。
event
明天我们来介绍一个 library的延伸 using for的应用。
<<: 【Day10】:库函数包装—对於底层暂存器的操纵(上)
前言 闭包的观念,其实就和前几天谈到的作用域、变数宣告和作用域的观念有关。只要有清楚知道其中差异,在...
我们上一篇文章讲到了HTML DOM的阶层以及树状图,接下来我们就举两个例子来厘清一下观念,也让我自...
URL : https://app.hackthebox.eu/machines/14 IP : ...
大家好! 相信有挑战铁人赛的读者,应该都有这样的疑问: 为什麽关闭浏览器时,不会发出警告来阻止我呢?...
产品经理平常需要沟通的对象很多,而这些对象对专案的影响程度大小可能不尽相同,为了有效的擅用产品经理自...