Valori di ritorno
Fa parte della sezione Fondamenti del percorso Solidity di Coddy. Lezione 22 di 53.
Una funzione può calcolare un risultato senza stamparlo. Dichiara il tipo del risultato con returns, poi usa return all'interno del corpo. Chi chiama la funzione può salvare il valore restituito e usarlo in un'espressione più ampia. Restituire e stampare sono azioni separate.
Definisci questo helper all'interno del contratto:
function doubled(uint256 n) internal pure returns (uint256) {
return n * 2;
}Usalo all'interno della funzione main fornita:
uint256 value = doubled(9);
console.log(value + 1);La funzione di supporto restituisce diciotto. Il chiamante aggiunge uno e stampa diciannove. Un'istruzione return termina la chiamata alla funzione corrente, quindi le istruzioni ordinarie dopo un return incondizionato non possono contribuire a quella chiamata.
Il chiamante può memorizzare o usare un valore restituito senza che venga stampato dalla funzione di supporto.
Sfida
FacileScrivi una funzione di supporto interna pura chiamata square che restituisca n per n. In main, memorizza square(side) in una variabile e stampala.
I test passano gli argomenti a main in questo ordine: uint256 side. Ogni test inizia con uno stato del contratto nuovo.
Usa console.log per l'output richiesto. Stampa solo i valori richiesti, uno per riga, senza etichette aggiuntive, a meno che l'attività non le specifichi.
Provalo tu
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 side) external view {
// Scrivi qui la tua soluzione.
}
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
2Variabili e tipi
Interi senza segnoInput e outputInteri con segnoValori booleaniStringhe in memoriaScheda profilo5Funzioni
Parametri delle funzioniValori di ritornoFunzioni pureChiamate di supportoCalcoli riutilizzabiliEsercitati da solo: Playground Solidity