Problema: Cree un contrato inteligente llamado MyContract que tenga una variable de estado como propietario. Cree un constructor para obtener la dirección del propietario de msg y manténgalo en la variable de estado propietario. Además, cree una función getBalance() para mostrar el saldo actual del propietario.
Solución: cada contrato inteligente es propiedad de una dirección llamada propietario. Un contrato inteligente puede conocer la dirección de su propietario usando la propiedad del remitente y su saldo disponible usando un objeto especial integrado llamado msg.
Paso 1: Abra Remix-IDE.
Paso 2: seleccione Explorador de archivos en los iconos del lado izquierdo y seleccione Solidez en el entorno. Haga clic en la opción Nuevo debajo del entorno Solidez. Ingrese el nombre del archivo como MyContract.sol y haga clic en el botón Aceptar .
Paso 3: Ingrese el siguiente código de solidez.
Solidity
// Solidity program to // retrieve address and // balance of owner pragma solidity ^0.6.8; // Creating a contract contract MyContract { // Private state variable address private owner; // Defining a constructor constructor() public{ owner=msg.sender; } // Function to get // address of owner function getOwner( ) public view returns (address) { return owner; } // Function to return // current balance of owner function getBalance( ) public view returns(uint256){ return owner.balance; } }
Paso 4: Compile el archivo MyContract.sol desde la pestaña Solidity Compiler .
Paso 5: implemente el contrato inteligente desde la pestaña Implementar y ejecutar transacción y obtendrá el saldo y la dirección del propietario.
Paso 6: El siguiente resultado muestra la dirección y el saldo del propietario.