اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

اثر پروانه‌ای نام پدیده‌ای است که به دلیل حساسیت سیستم‌های آشوب‌ناک به شرایط اولیه ایجاد می‌شود. این پدیده به این اشاره می‌کند که تغییری کوچک در یک سیستم آشوب‌ناک چون جو سیارهٔ زمین (مثلاً بال‌زدن پروانه) می‌تواند باعث تغییرات شدید (وقوع توفان در کشوری دیگر) در آینده شود.

ایده‌ٔ این‌که پروانه‌ای می‌تواند باعث تغییری آشوبی شود نخستین بار در ۱۹۵۲ در داستان کوتاهی به نام آوای تندر اثر ری بردبری مطرح شد. عبارت «اثر پروانه ای» هم در ۱۹۶۱ در پی مقاله‌ای از ادوارد لورنتس به وجود آمد. وی در صد و سی و نهمین اجلاس ای‌ای‌ای‌اس در سال ۱۹۷۲ مقاله‌ای با این عنوان ارائه داد که «آیا بال‌زدن پروانه‌ای در برزیل می‌تواند باعث ایجاد تندباد در تکزاس شود؟»

آخرین نظرات
  • ۱۳ بهمن ۰۱، ۱۵:۳۱ - حسنا سادات و سما سادات
    عالی
  • ۱
  • ۰

کلیدواژه sizeof

در نوع های مدیریت نشده، برای بدست آوردن اندازه آن نوع بر حسب بایت استفاده می شود. نوع های مدیریت نشده شامل نوع های توکار (built-in) که در جدولی که بعدا" می آید لیست شده اند و همچنین نوع های زیر هستند:

  • نوع های شمارشی (Enum types)
  • نوع های اشاره گر (Pointer types)
  • ساختارهای کاربر-تعریف که حاوی هیچ فیلد یا پراپرتی نوع مرجع نباشد

مثال زیر چگونگی بدست آوردن اندازه یک نوع int را نشان می دهد:

// Constant value 4:
int intSize = sizeof(int); 

ملاحظات

از نسخه 2.0 سی شارپ به بعد، اعمال sizeof روی نوع های توکار ، دیگر نیازی به استفاده از شیوه unsafe ندارد.

عملگر sizeof را نمی توان overload کرد. مقدار برگشتی توسط عملگر sizeof از نوع int است. جدول زیر مقادیر ثابتی که جایگزین عبارت sizeof با عملوندهای ورودی از نوع های خاص را نشان می دهد:

عبارت

مقدار ثابت

sizeof(sbyte)

1

sizeof(byte)

1

sizeof(short)

2

sizeof(ushort)

2

sizeof(int)

4

sizeof(uint)

4

sizeof(long)

8

sizeof(ulong)

8

sizeof(char)

2 (Unicode)

sizeof(float)

4

sizeof(double)

8

sizeof(decimal)

16

sizeof(bool)

1

برای همه نوع های دیگر از جمله ساختارها، عملگر sizeof فقط می تواند در بلوک کد unsafe مورد استفاده قرار گیرد. هرچند شما می توانید از متد Marshal.SizeOf استفاده کنید، مقدار برگشتی توسط این متد همیشه با مقدار برگشتی توسط sizeof برابر نیست. Marshal.SizeOf بعد از اینکه نوع در حافظه سازماندهی شد، اندازه را برمی گرداند، درحالیکه sizeof به محظ اینکه نوع توسط زبان زمان اجرای عمومی (CLR) تخصیص داده شد، اندازه را با احتساب هرگونه padding (صفرهای پشت عدد که باعث می شوند عدد همواره اندازه یکسانی داشته باشد) برگشت می دهد.

مثال

class MainClass
{
    // unsafe not required for primitive types
    static void Main()
    {
        Console.WriteLine("The size of short is {0}.", sizeof(short));
        Console.WriteLine("The size of int is {0}.", sizeof(int));
        Console.WriteLine("The size of long is {0}.", sizeof(long));
    }
}
/*
Output:
   The size of short is 2.
   The size of int is 4.
   The size of long is 8.
*/

نظرات (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی