如何创建一个在每次合约调用时调用的函数? – 稳固

How do I make a function that is called on every contract call? – Solidity

我需要制作一个函数,每次有人调用我的合约时都会调用该函数。而且我需要在不使用修饰符的情况下进行,因为我的合约中有很多功能,而且我使用的是第三方合约。

我该怎么做?

您可以继承第三方合约并创建新的子合约,然后使用您在子合约中定义的修饰符修改每个函数,这是唯一的方法。

示例:

Contract ThirdParty {
    address owner;

    function f() public {}
}


Contract Child is ThirdParty {

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function f() public onlyOwner {}
}