Solidité - Cartographie
Le mappage est un type de référence sous forme de tableaux et de structures. Voici la syntaxe pour déclarer un type de mappage.
mapping(_KeyType => _ValueType)
Où
_KeyType- peut être n'importe quel type intégré plus des octets et une chaîne. Aucun type de référence ou objets complexes ne sont autorisés.
_ValueType - peut être de n'importe quel type.
Considérations
Le mappage ne peut avoir que le type de storage et sont généralement utilisés pour les variables d'état.
Le mappage peut être marqué comme public. Solidity crée automatiquement un getter pour cela.
Exemple
Essayez le code suivant pour comprendre le fonctionnement du type de mappage dans Solidity.
pragma solidity ^0.5.0;
contract LedgerBalance {
mapping(address => uint) public balances;
function updateBalance(uint newBalance) public {
balances[msg.sender] = newBalance;
}
}
contract Updater {
function updateBalance() public returns (uint) {
LedgerBalance ledgerBalance = new LedgerBalance();
ledgerBalance.updateBalance(10);
return ledgerBalance.balances(address(this));
}
}
Exécutez le programme ci-dessus en suivant les étapes fournies dans le chapitre Application Solidity First .
Premier clic updateBalance Bouton pour définir la valeur sur 10, puis regardez dans les journaux qui afficheront la sortie décodée comme -
Production
{
"0": "uint256: 10"
}