Crear un contrato inteligente que devuelva la dirección y el saldo del propietario usando Solidity

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.

Publicación traducida automáticamente

Artículo escrito por muskan02 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *