Memory
SolidityDéfinition
Zone de stockage temporaire utilisée pendant l'exécution d'une fonction. Moins coûteuse que le storage. Reset à chaque appel de fonction. Obligatoire pour les types complexes (arrays, strings, structs) passés en paramètres ou retournés. Déclaration : string memory, uint256[] memory, etc.
Version anglaise
Temporary storage area used during function execution. Less expensive than storage. Reset on each function call. Mandatory for complex types (arrays, strings, structs) passed as parameters or returned. Declaration: string memory, uint256[] memory, etc.
Exemple de Code
contract MemoryExample {
struct User {
string name;
uint256 age;
}
User[] public users;
function addUser(string memory _name, uint256 _age) public {
// _name est en memory (temporaire)
User memory newUser = User(_name, _age); // Création en memory
users.push(newUser); // Copie vers le storage
}
function getUser(uint256 index) public view returns (User memory) {
return users[index]; // Retour d'une copie en memory
}
}Termes Liés
Pages Liées
Pratique ce concept sur Solingo
Maîtrise Memory avec des exercices interactifs et un IDE intégré.
Commencer gratuitement