Solidity 050ContractWithModifier

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.9;

// A contract that demonstrates the use of modifiers to enforce access control.

contract ContractWithModifier {

    // State variable to store the owner's address.

    address owner;

   

    // Public state variable to store an integer value.

    int public mydata;

   

    // Constructor to initialize the contract.

    // Sets the contract deployer as the owner.

    constructor() {

        owner = msg.sender;

    }

   

    // Modifier to restrict function access to the owner of the contract.

    modifier isOwner {

        // Checks if the message sender is the owner of the contract.

        // Continues execution of the function if true.

        if(msg.sender == owner) {

            _; // Placeholder for the modified function's body.

        }

    }

   

    // Function to assign double the input value to 'mydata'.

    // Access is restricted to the owner by using the 'isOwner' modifier.

    function AssignDoubleValue(int _data) public isOwner {

        mydata = _data * 2;

    }

   

    // Public function to assign ten times the input value to 'mydata'.

    // This function is accessible by any caller, not restricted to the owner.

    function AssignTenerValue(int _data) public {

        mydata = _data * 10;

    }

}

//Deploy:

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值