Menu
Coddy logo textTech

משתני מצב

חלק מהיחידה יסודות במסלול ה-Solidity של Coddy. שיעור 26 מתוך 53.

משתנה שמוצהר בתוך החוזה אך מחוץ לכל פונקציה הוא משתנה מצב. הפונקציות בחוזה הזה חולקות אותו. משתנה מקומי שמוצהר בתוך פונקציה שייך לקריאה הזאת. בבלוקצ'יין פרוס, שינויים מוצלחים במצב יכולים להישמר בין עסקאות.

הצהירו עליו ברמת החוזה:

uint256 count;

השתמשו בו בתוך הפונקציה main שסופקה:

count = 6;
console.log(count);

המשתנה count מוכרז בהיקף של החוזה ו-main משייכת לו ערך. סביבת הרצת התרגול הזאת מתחילה עם אחסון מאופס וחדש עבור כל בדיקה, לכן אל תצפה שבדיקה אחת תמשיך את האחרת. ביחידה הזאת, אתחל את המצב באמצעות השמות בתוך main ולא באמצעות אתחולים בהכרזות או בנאים.

משתנה מצב מוכרז בהיקף של החוזה, מחוץ לגופי פונקציות.

challenge icon

אתגר

קל

הצהירו על משתנה מצב visits. בתוך main, הגדירו אותו לערך שסופק ב-start, קראו לפונקציית העזר הפנימית addVisit שמגדילה את visits באחד, ואז הדפיסו את visits.

הבדיקות מעבירות ארגומנטים ל-main בסדר הזה: uint256 start. כל בדיקה מתחילה עם מצב חוזה חדש.

השתמשו ב-console.log עבור הפלט המבוקש. הדפיסו רק את הערכים המבוקשים, אחד בכל שורה, ללא תוויות נוספות אלא אם המשימה מציינת זאת.

נסו בעצמכם

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 start) external  {
        // כתבו כאן את הפתרון שלכם.
    }
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: Solidity אונליין