基于以太坊的智能合約開發教程 Solidity mapping映射
映射型別在宣告時的形式為 mapping(_KeyType => _ValueType), 其中 _KeyType 可以是任何基本型別,即可以是任何的內建型別, bytes 和 string 或合約型別、列舉型別, 而其他用戶定義的型別或復雜的型別如:映射、結構體、即除 bytes 和 string 之外的陣列型別是不可以作為 _KeyType 的型別的,
pragma solidity ^0.4.19;
contract mappingTest{
mapping(address => uint) idmaping;
mapping(uint => string) namemaping;
uint public sum = 0;
function register(string name){
// 獲取當前合約的呼叫者
address account = msg.sender;
sum++;
// 將合約的呼叫者的地址與注冊總量id系結在一起
idmaping[msg.sender] = sum;
// 當前用戶的id與用戶注冊的名字系結在一起
namemaping[sum] = name;
}
function getNameById(uint id)view public returns(string){
return namemaping[id];
}
function getIdByAddress(address account)view returns(uint){
return idmaping[account];
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/354710.html
標籤:區塊鏈
