Variabel State
Termasuk bagian Dasar-Dasar dalam perjalanan Solidity di Coddy. Pelajaran 26 dari 53.
Variabel yang dideklarasikan di dalam contract tetapi di luar semua fungsi adalah variabel state. Fungsi-fungsi di dalam contract tersebut berbagi variabel itu. Variabel lokal yang dideklarasikan di dalam fungsi hanya berlaku untuk pemanggilan fungsi tersebut. Pada blockchain yang sudah di-deploy, perubahan state yang berhasil dapat bertahan di antara transaksi.
Deklarasikan ini pada cakupan contract:
uint256 count;Gunakan ini di dalam fungsi main yang disediakan:
count = 6;
console.log(count);count dideklarasikan pada cakupan contract, lalu main menetapkan nilainya. Alat latihan ini memulai setiap pengujian dengan penyimpanan baru yang nilainya semua nol, jadi jangan berharap satu pengujian melanjutkan pengujian lainnya. Untuk bagian ini, inisialisasi state melalui penetapan nilai di dalam main, bukan melalui inisialisasi deklarasi atau constructor.
Variabel state dideklarasikan pada cakupan contract, di luar badan fungsi.
Tantangan
MudahNyatakan variabel state visits. Di dalam main, tetapkan nilainya ke start yang diberikan, panggil helper internal addVisit yang menambah visits sebanyak satu, lalu cetak visits.
Pengujian memberikan argumen kepada main dalam urutan ini: uint256 start. Setiap pengujian dimulai dengan state contract yang baru.
Gunakan console.log untuk output yang diminta. Cetak hanya nilai yang diminta, satu per baris, tanpa label tambahan kecuali jika ditentukan oleh tugas.
Coba sendiri
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 start) external {
// Tulis solusimu di sini.
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
2Variabel dan Tipe Data
Integer Tak BertandaInput dan OutputInteger BertandaNilai Booleanstring di MemoriKartu Profil5Fungsi
Parameter FungsiMengembalikan NilaiFungsi MurniPemanggilan Fungsi PembantuPerhitungan yang Dapat Digunakan KembaliLatihan sendiri: Playground Solidity