ERC20-Methode, um die aktuelle Blocknummer zu verfolgen

Ich suche nach einer Methode, die ich in meinen ersten Smart Contract aufnehmen kann, der die aktuelle Ethereum-Blocknummer erhält. Ich habe einige Anzeichen dafür gesehen, dass block.number dies tun wird, aber ich bin mir nicht ganz sicher. Gibt es außerdem irgendwo eine Liste aller verfügbaren Methoden?

Antworten (1)

Ja block.numbersollte Ihre Anforderungen erfüllen. Es gibt keine formale Funktionsspezifikation im ERC20-Standard, um die Blocknummer zu verfolgen. Wie Sie es tun würden, hängt davon ab, was Sie tun möchten. Wenn Sie beispielsweise den letzten Block aufzeichnen möchten, in dem eine Funktion irgendeiner Art für den Vertrag aufgerufen wurde, könnten Sie so etwas tun

uint256 public lastBlock;

function setLastBlock()
     internal
     returns (bool)
{
    lastBlock = block.number;
    return true;
}

Dann könnten Sie irgendwo in Ihren Funktionen use aufrufen, require(setLastBlock());was die Variable setzen würde lastBlock.

Die folgenden Solidity-Dokumente listen alle verfügbaren globalen Variablen auf:

Einige allgemeine, aber nützliche Links:

Kein Problem! Ich würde den Beitrag noch einmal überprüfen, da ich glaube, dass die von mir vorgenommene Bearbeitung nach Ihrem Kommentar vorgenommen wurde, der einen Tippfehler im Funktionscode enthielt.