Durum Değişkenleri
Coddy'nin Solidity Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 26 / 53.
Sözleşme içinde ancak her fonksiyonun dışında tanımlanan bir değişken, durum değişkenidir. Bu sözleşmedeki fonksiyonlar onu paylaşır. Bir fonksiyonun içinde tanımlanan yerel değişken, o çağrıya aittir. Dağıtılmış bir blockchain üzerinde başarılı durum değişiklikleri işlemler arasında kalıcı olabilir.
Bunu sözleşme kapsamında tanımlayın:
uint256 count;Sağlanan main fonksiyonunun içinde kullanın:
count = 6;
console.log(count);count sözleşme kapsamında tanımlanır ve main ona bir değer atar. Bu uygulama çalıştırıcısı her test için sıfırlanmış yeni depolama alanıyla başlar; bu nedenle bir testin diğerine devam etmesini beklemeyin. Bu bölüm için durumu, bildirim başlatıcıları veya oluşturucular yerine main içindeki atamalarla başlatın.
Bir durum değişkeni, işlev gövdelerinin dışında, sözleşme kapsamında tanımlanır.
Görev
KolayBir durum değişkeni olan visits tanımlayın. main içinde, onu sağlanan start değerine ayarlayın, visits değerini bir artıran dahili yardımcı addVisit işlevini çağırın, ardından visits değerini yazdırın.
Testler main işlevine bağımsız değişkenleri şu sırayla geçirir: uint256 start. Her test, sözleşme durumuyla başlar.
İstenen çıktı için console.log kullanın. İstenen değerleri, her satıra bir tane gelecek şekilde ve görev bunları belirtmedikçe ek etiket olmadan yazdırın.
Kendin dene
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 start) external {
// Çözümünüzü buraya yazın.
}
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temel Bilgiler bölümündeki tüm dersler
2Değişkenler ve Türler
İşaretsiz TamsayılarGirdiler ve Çıktılarİşaretli TamsayılarBoolean DeğerleriBellekte DizelerProfil Kartı5Fonksiyonlar
Fonksiyon ParametreleriDeğer DöndürmeSaf FonksiyonlarYardımcı ÇağrılarıYeniden Kullanılabilir Hesaplamalar6Sözleşme Durumu
Durum DeğişkenleriDurumu Okuma ve YazmaHerkese Açık Durum GetiricileriSabitlerPaylaşılan SayaçKendi başına pratik yap: Solidity playground