وبلاگ

دستور Enums در برنامه نویسی سالیدیتی

Enums در برنامه نویسی سالیدیتی
سالیدیتی

دستور Enums در برنامه نویسی سالیدیتی

Enums یک متغیر را محدود می کند تا فقط یکی از چند مقدار از پیش تعریف شده داشته باشد. مقادیر موجود در این لیست شمارش شده را Enum می نامند.با استفاده از دستور Enums در برنامه نویسی سالیدیتی می توان باگ های موجود در کد را کاهش داد..Enums روشی برای ایجاد انواع داده های تعریف شده توسط کاربر است، که باعث می شود قرارداد برای نگهداری و خواندن بهتر شود. Enums متغیر را با یکی از چند مقدار از پیش تعریف شده محدود می کند، این مقادیر لیست شمارش شده enums نامیده می شوند. گزینه ها با مقادیر صحیح از صفر نشان داده می شوند، یک مقدار پیش فرض نیز می تواند برای enum داده شود.Enum ها خوانایی کد را افزایش می دهند.

دستور Enums در برنامه نویسی سالیدیتی
دستور Enums در برنامه نویسی سالیدیتی

جهت دریافت اطلاعات بیشتر قبل از مطالعه مقاله زیر توصیه می کنیم مقالات و محتواهای آموزش زبان سالیدیتی را هم مطالعه نمایید.

  1. قرارداد هوشمند یا اسمارت کانترکت (Smart Contract) چیست؟
  2. چگونه یک برنامه نویس سالیدیتی شویم؟
  3. کاربردهای برنامه نویسی سالیدیتی
  4. آرایه ها در زبان برنامه نویسی سالیدیتی
  5. مکان داده در برنامه نویسی سالیدیتی
  6. توابع بازگشتی در سالیدیتی

به عنوان مثال، اگر برنامه ای را برای آب میوه فروشی در نظر بگیریم، می توان اندازه لیوان را به کوچک، متوسط و بزرگ محدود کرد. این اطمینان می دهد که به هیچ کس اجازه نمی دهد  اندازه دیگری غیر از کوچک، متوسط یا بزرگ سفارش دهد.​

سینتکس دستور Enums در سالیدیتی

enum <enumerator_name> { 
            element 1, element 2,....,element n
}

مثالی از Enums در برنامه نویسی سالیدیتی

با استفاده از کد زیر می توانید با عملکرد Enum در زبان برنامه نویسی سالیدیتی آشنا شوید.

pragma solidity ^0.5.;

contract test {
   enum FreshJuiceSize{ SMALL, MEDIUM, LARGE }
   FreshJuiceSize choice;
   FreshJuiceSize constant defaultChoice = FreshJuiceSize.MEDIUM;

   function setLarge() public {
      choice = FreshJuiceSize.LARGE;
   }
   function getChoice() public view returns (FreshJuiceSize) {
      return choice;
   }
   function getDefaultChoice() public pure returns (uint) {
      return uint(defaultChoice);
   }
}

ابتدا بر روی SetLarge کلیک کنید تا مقدار به صورت LARGE تنظیم شود و سپس GetChoice را انتخاب کنید تا گزینه ی انتخاب شده انجام شود.

مشاهده  وام دهی در ارزهای دیجیتال

خروجی

uint8: 2

برای دریافت گزینه پیش فرض، روی گزینه GetDefaultChoice کلیک کنید.

خروجی

uint256: 1

آموزش برنامه نویسی سالیدیتی

مثالی دیگر از دستور Enums در سالیدیتی

مثال: در مثال زیر، قرارداد از یک شمارشگر week_days تشکیل شده است و توابعی برای تنظیم و دریافت مقدار متغیر نوع شمارشگر تعریف شده اند.

// Solidity program to demonstrate
// how to use 'enumerator'
pragma solidity ^0.5.0;

// Creating a contract
contract Types {

	// Creating an enumerator
	enum week_days
	{
	Monday,
	Tuesday,
	Wednesday,
	Thursday,
	Friday,
	Saturday,
	Sunday
	}

	// Declaring variables of
	// type enumerator
	week_days week;
	
	week_days choice;

	// Setting a default value
	week_days constant default_value
	= week_days.Sunday;
	
	// Defining a function to
	// set value of choice
	function set_value() public {
	choice = week_days.Thursday;
	}

	// Defining a function to
	// return value of choice
	function get_choice(
	) public view returns (week_days) {
	return choice;
	}
	
	// Defining function to
	// return default value
	function getdefaultvalue(
	) public pure returns(week_days) {
		return default_value;
	}
}

تصویر دستور Enums در برنامه نویسی سالیدیتی

Enums در سالیدیتی

دیدگاه خود را اینجا قرار دهید

نشانی ایمیل شما منتشر نخواهد شد.

برچسب های محبوب

آموزش برنامه نویسی سالیدیتی آموزش سالیدیتی آموزش قرارداد هوشمند اجزای قرارداد هوشمند ارزدیجیتال ADA ارز دیجیتال اتریوم ارزهای متاورسی الگوریتم اثبات کار الگوریتم اجماع امنیت کیف پول ارزدیجیتال اهمیت قرارداد هوشمند برنامه نویس سالیدیتی برنامه نویسی NFT برنامه نویسی اتریوم برنامه نویسی بلاکچین برنامه نویسی ریمیکس برنامه نویسی سالیدیتی برنامه نویسی قرارداد هوشمند بلاکچین بلاک چین اتریوم بهترین ارزهای دیجیتال ترافل توسعه دهنده سالیدیتی صرافی متمرکز صرافی های ارزدیجیتال صرافی‌ غیرمتمرکز قرارداد هوشمند ماشین مجازی متاورس مزایای قرارداد هوشمند معایب صرافی ارزدیجیتال نوشتن سیستم رای گیری با سالیدیتی نوشتن قرارداد هوشمند واقعیت مجازی متاورس وام در ارزدیجیتال ویژگی‌های اتریوم پلتفرم های ارزدیجیتال پیش نیاز قرارداد هوشمند کاربرد قراردادهای هوشمند کاربرد قرارداد هوشمند کد نویسی سالیدیتی کسب درآمد با قرارداد هوشمند کسب درآمد در متاورس کیف پول ارزدیجیتال کیف پول الکترونیکی