Solidity进阶之路:搭建僵尸工厂 - 第9章: 私有 / 公共函数

Solidity Path: Beginner to Intermediate Smart Contracts

课程链接:https://cryptozombies.io/zh/lesson/1

你认为你可以当一个合格的 CryptoZombie, 嗯?
这个教程会教你如何搭建一个以太网的游戏。
此课程为 Solidity 初学者设计,需要你对其他的程序语言有所了解(如 JavaScript)。

第9章: 私有 / 公共函数

Solidity 定义的函数的属性默认为公共。 这就意味着任何一方 (或其它合约) 都可以调用你合约里的函数。

显然,不是什么时候都需要这样,而且这样的合约易于受到攻击。 所以将自己的函数定义为私有是一个好的编程习惯,只有当你需要外部世界调用它时才将它设置为公共。

如何定义一个私有的函数呢?

uint[] numbers;

function _addToArray(uint _number) private {
     
    numbers.push(_number);
}

这意味着只有我们合约中的其它函数才能够调用这个函数,给numbers数组添加新成员。

可以看到,在函数名字后面使用关键字private即可。和函数的参数类似,私有函数的名字用(_)起始。

你可能感兴趣的:(Solidity,Path,区块链,以太坊,智能合约)