hardhat学习
- 安装 hardhat 在安装过程中可能会出现安装失败的问题,
请参考:https://blog.csdn.net/laosao_66/article/details/135880270
https://zhuanlan.zhihu.com/p/628536324
pragma solidity ^0.4.0;
contract Map {
// 定义一个映射
mapping (address => uint) favoriteNumber;
function setMyNumber(uint _myNumber) public {
// 更新我们的 ‘favoriteNumber’ 映射来讲 _myNumber 存储在 msg.sender
favoriteNumber[msg.sender] = _myNumber;
// 存储数据至映射的方法和将数据存储在数组相似
}
function whatIsMyNumber() public view returns (uint){
return favoriteNumber[msg.sender];
}
}
在这个小小的例子中,任何人都可以调用 setMyNumber 在我们的合约中存下一个 uint 并且与他们的地址相绑定。 然后,他们调用 whatIsMyNumber 就会返回他们存储的 uint。
使用 msg.sender 很安全,因为它具有以太坊区块链的安全保障 —— 除非窃取与以太坊地址相关联的私钥,否则是没有办法修改其他人的数据的。