如何清除和重置数组的映射

How to clear and reset Mapping of Array in solidity

下面是我如何将记录写入映射数组。我如何创建一个 clear|removeall 函数来清除或重置所有记录为空的默认值?

    address payable[] public players;
    mapping(address => uint256[])  playerTicket;
        
        
    function playersRecord() public view returns(uint256[] memory){
                return playerTicket[msg.sender];
    }

我用下面的函数一个一个清除但不知道如何全部清除

function remove(address _addr) public {
    // Reset the value to the default value.
    delete playerTicket[_addr];
}

如果不指定密钥,您将无法清除所有映射值。 因此,Solidity 不知道映射的键。由于键是任意的并且不一起存储,因此删除值的唯一方法是知道每个存储值的键。
您的 remove() 函数可以正确清除特定映射键的值。

更多信息here