Solidez - Funciones de vista

Las funciones de visualización garantizan que no modificarán el estado. Una función puede declararse comoview. Las siguientes declaraciones, si están presentes en la función, se consideran modificando el estado y el compilador lanzará una advertencia en tales casos.

  • Modificación de variables de estado.

  • Emitiendo eventos.

  • Creación de otros contratos.

  • Utilizando la autodestrucción.

  • Envío de Ether a través de llamadas.

  • Llamar a cualquier función que no esté marcada como vista o pura.

  • Usando llamadas de bajo nivel.

  • Usando ensamblaje en línea que contiene ciertos códigos de operación.

Los métodos getter son funciones de visualización predeterminadas.

Vea el siguiente ejemplo usando una función de visualización.

Ejemplo

pragma solidity ^0.5.0;

contract Test {
   function getResult() public view returns(uint product, uint sum){
      uint a = 1; // local variable
      uint b = 2;
      product = a * b;
      sum = a + b; 
   }
}

Ejecute el programa anterior siguiendo los pasos proporcionados en el capítulo Primera aplicación de Solidity.

Salida

0: uint256: product 2
1: uint256: sum 3