Solidity 合约 "new" 关键字的语法解释
Syntax explanation for "new" keyword for contracts in Solidity
我正在尝试理解 C c = new C();
的语法
我阅读了 new
关键字部署、初始化状态变量、运行构造函数、将随机数设置为 1,以及 returns 新实例的地址。
我读到状态变量 a
有一个 0 元 public getter 函数 a()
returns a
的值].
问题:
- 合同的 getter 功能“是”什么?
- 为什么
new
作用于getter函数?
- 在
C c = new C();
为什么我们需要第一个C
来定义变量?
What "is" the getter function of a contract?
Why does new act on the getter function?
您可以通过省略 new
关键字来创建指向已部署合约的指针。请注意,地址 不是 构造函数参数 - 它是外部合约的地址。
// points to a contract already deployed on address 0x123
C c = C(address(0x123));
In C c = new C();
why do we need the first C
to define the variable?
Solidity 是一种严格类型化的语言。所以第一个C
定义了一个变量类型C
.
我正在尝试理解 C c = new C();
我阅读了 new
关键字部署、初始化状态变量、运行构造函数、将随机数设置为 1,以及 returns 新实例的地址。
我读到状态变量 a
有一个 0 元 public getter 函数 a()
returns a
的值].
问题:
- 合同的 getter 功能“是”什么?
- 为什么
new
作用于getter函数? - 在
C c = new C();
为什么我们需要第一个C
来定义变量?
What "is" the getter function of a contract?
Why does new act on the getter function?
您可以通过省略 new
关键字来创建指向已部署合约的指针。请注意,地址 不是 构造函数参数 - 它是外部合约的地址。
// points to a contract already deployed on address 0x123
C c = C(address(0x123));
In
C c = new C();
why do we need the firstC
to define the variable?
Solidity 是一种严格类型化的语言。所以第一个C
定义了一个变量类型C
.