Tableaux de stockage
Fait partie de la section Fondamentaux du Journey Solidity de Coddy. Leçon 38 sur 53.
Un tableau dynamique déclaré au niveau du contrat est stocké dans le stockage. Utilisez push(value) pour ajouter un élément et pop() pour supprimer le dernier. Appeler pop sur un tableau vide provoque une annulation. Sa longueur change à mesure que des valeurs sont ajoutées ou supprimées.
Déclarez ceci au niveau du contrat :
uint256[] values;Utilisez-le dans la fonction main fournie :
values.push(6);
values.push(15);
values.pop();
console.log(values.length);
console.log(values[0]);Le tableau est vide au début de ce test. Deux appels à push créent deux éléments, et pop supprime le deuxième. Le premier reste égal à six. La mise à jour d’un tableau de stockage modifie l’état du contrat, donc main ne peut pas être view.
push et pop modifient un tableau de stockage dynamique à sa fin.
Défi
FacileDéclarez un tableau de stockage dynamique de type uint256 nommé values. Ajoutez a, b et c, supprimez le dernier élément, puis affichez la longueur et la dernière valeur restante.
Les tests transmettent les arguments à main dans cet ordre : uint256 a, uint256 b, uint256 c. Chaque test commence avec un état de contrat vierge.
Utilisez console.log pour la sortie demandée. Affichez uniquement les valeurs demandées, une par ligne, sans libellés supplémentaires, sauf si la tâche les spécifie.
Essayez vous-même
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 a, uint256 b, uint256 c) external {
// Écrivez votre solution ici.
}
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
2Variables et types
Entiers non signésEntrées et sortiesEntiers signésValeurs booléennesChaînes en mémoireCarte de profil5Fonctions
Paramètres des fonctionsValeurs de retourFonctions puresAppels de fonctions auxiliairesCalculs réutilisables8Tableaux
Tableaux de taille fixeTableaux à mémoire dynamiqueTableaux de stockageParcourir les tableaux en boucleRésumé des tableauxEntraînez-vous par vous-même : Playground Solidity