Skip to content

Latest commit

 

History

History
67 lines (51 loc) · 1.63 KB

File metadata and controls

67 lines (51 loc) · 1.63 KB

映射类型

Solidity中存储键值对的数据结构,可以通过key查询value

映射代码形式

mapping (uint => address) public idToAddress ; // id映射地址

mapping(address => address) public swapPair; // 币对的映射,地址到地址

// 给mapping赋值
function writeMap (uint _Key, address _Value) public{
    idToAddress[_Key] = _Value;
}

映射的规则

  • key 只能用值类型,value不限制类型
  • 映射的存储位置必须是storage
  • 如果映射声明为public,那么Solidity会自动给你创建一个getter函数,可以通过Key来查询对应的Value。

变量初始值值

值类型初始值

bool public _bool; // false
string public _string; // ""
int public _int; // 0
uint public _uint; // 0
address public _address; // 0x0000000000000000000000000000000000000000 40个零

enum ActionSet { Buy, Hold, Sell}
ActionSet public _enum; // 第1个内容Buy的索引0

function fi() internal{} // internal空白函数
function fe() external{} // external空白函数 


引用类型初始值


// Reference Types
uint[8] public _staticArray; // 所有成员设为其默认值的静态数组[0,0,0,0,0,0,0,0]
uint[] public _dynamicArray; // `[]`
mapping(uint => address) public _mapping; // 所有元素都为其默认值的mapping
// 所有成员设为其默认值的结构体 0, 0
struct Student{
    uint256 id;
    uint256 score; 
}
Student public student;

delete操作符

delete a会让变量a的值变为初始值。

// delete操作符
bool public _bool2 = true; 
function d() external {
    delete _bool2; // delete 会让_bool2变为默认值,false
}