Memory

EVM

Definition

Zone de stockage temporaire effacée entre les appels de fonction. Plus cher que `calldata` mais moins cher que `storage`. Utilisée pour les variables locales de types complexes (arrays, structs, strings). Les données en memory peuvent être modifiées, contrairement à calldata.

English version

Temporary storage area cleared between function calls. More expensive than `calldata` but cheaper than `storage`. Used for local variables of complex types (arrays, structs, strings).

Exemple de Code

function processData(uint[] calldata input) external pure returns (uint[] memory) {
    // Créer un nouveau array en memory
    uint[] memory result = new uint[](input.length);

    for (uint i = 0; i < input.length; i++) {
        result[i] = input[i] * 2;
    }

    return result;
}

Pratique ce concept sur Solingo

Maîtrise Memory avec des exercices interactifs et un IDE intégré.

Commencer gratuitement