מבנים
חלק מהיחידה יסודות במסלול ה-Solidity של Coddy. שיעור 43 מתוך 53.
מבנה מקבץ שדות קשורים תחת שם סוג מותאם אישית. לכל שדה יש סוג ושם, והשדות יכולים להיות מסוגים שונים. הצהר על הסוג ברמת החוזה, צור ערך ואז גש לשדות שלו באמצעות נקודה.
הצהר על כך ברמת החוזה:
struct Parcel { uint256 weight; bool ready; }השתמש בו בתוך הפונקציה main שסופקה:
Parcel memory item = Parcel(11, true);
console.log(item.weight);
console.log(item.ready);לטיפוס Parcel יש שדות weight ו-ready. הבנאי המיקומי מספק ערכים לפי סדר ההצהרה. הפריט הזה חי בזיכרון למשך הקריאה הנוכחית; הכרזה על טיפוס struct לבדה אינה יוצרת רשומות מאוחסנות.
השתמש בנקודה ואחריה שם השדה כדי לקרוא שדה במבנה או לשנות אותו.
אתגר
קלהכריזו על struct בשם Badge עם uint256 level ו-bool active, בסדר הזה. צרו Badge בזיכרון מהקלטים שסופקו והדפיסו את שני השדות.
הבדיקות מעבירות ארגומנטים ל-main בסדר הזה: uint256 level, bool active. כל בדיקה מתחילה במצב חוזה חדש.
השתמשו ב-console.log עבור הפלט המבוקש. הדפיסו רק את הערכים המבוקשים, אחד בכל שורה, בלי תוויות נוספות אלא אם המשימה מציינת אותן.
נסו בעצמכם
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 level, bool active) external view {
// כתבו כאן את הפתרון שלכם.
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
תרגלו בעצמכם: Solidity אונליין