View

Solidity

Définition

Modificateur de fonction indiquant qu'elle lit l'état mais ne le modifie pas. Peut accéder aux variables d'état, au storage, à block, msg, etc. Ne coûte pas de gas si appelée depuis l'extérieur (lecture gratuite), mais coûte du gas si appelée depuis une transaction (car exécutée par l'EVM). Plus permissif que pure.

Version anglaise

Function modifier indicating it reads state but does not modify it. Can access state variables, storage, block, msg, etc. Costs no gas if called externally (free read), but costs gas if called from transaction (executed by EVM). More permissive than pure.

Exemple de Code

contract ViewExample {
  uint256 public value = 42;

  // View : lit l'état
  function getValue() public view returns (uint256) {
    return value; // Accès au storage : OK
  }

  function getBlockNumber() public view returns (uint256) {
    return block.number; // Accès à block : OK
  }

  // ❌ Erreur : modifie l'état
  // function badView() public view {
  //   value = 100; // ERREUR : view ne peut pas modifier
  // }
}

Termes Liés

Pratique ce concept sur Solingo

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

Commencer gratuitement