Açıkça Geri Alma
Coddy'nin Solidity Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 47 / 53.
Bir if dalı, geçersiz bir durumu açıkça reddetmek için revert(message) çağırabilir. Bu, reddetme koşulunun karşıtına göre okunmasının daha kolay olduğu durumlarda kullanışlıdır. Normal işlemleri guard ifadesinden sonra yerleştirin; böylece yalnızca kabul edilebilir girdiler için çalışırlar.
Bu alıntıdaki ifadeler, sağlanan main işlevinin içinde çalışır.
uint256 chosen = 4;
if (chosen > 6) { revert("Choice too large"); }
console.log(chosen + 2);Dört, altıyı aşmadığı için reddetme dalı atlanır. Yürütme, console çağrısına ulaşır. Açık bir revert, başarısız bir require gibi çağrıyı reddeder; normal bir sonucu yazdırmanın bir yolu değildir.
revert, normal şekilde devam etmek yerine mevcut çağrıyı hatayla sonlandırır.
Görev
Kolay50’nin üzerindeki değeri revert ve yararlı bir mesajla reddedin. Kabul edilen girdi için 50 eksi değeri yazdırın. Tüm çıktı testleri aralık içindedir.
Testler, main işlevine bağımsız değişkenleri şu sırayla iletir: uint256 value. Her test, yeni bir sözleşme durumuyla başlar.
İstenen çıktıyı almak 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 value) external view {
// Çö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
10Sözleşme Kuralları
Koşulları Zorunlu KılmaAçıkça Geri AlmaOlaylarGörünürlük ve GizlilikDenetimli Güncellemeler2Değ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 HesaplamalarKendi başına pratik yap: Solidity playground