CSCIENCE

CSCIENCE

سیشارپ - باید دانست 1

يكشنبه, ۳ شهریور ۱۳۹۲، ۰۱:۱۷ ق.ظ

سر ریز در محاسبات


باید دانست که:

زبان سیشارپ به صورت پیش فرض سر ریز محاسبات را بررسی نمی کند و اجازه می دهد تا مقدار نادرست ذخیره شود. شاید در برنامه های تجاری اعداد و محاسبات آنقدر بزرگ و پیچیده نباشند که سر ریز اهمیت داشته باشد اما در برنامه های علمی این اتفاق باعث گرفتن نتیجه ی نامطلوب می شود.
برای اینکه سیشارپ را مجبور کنیم تا سر ریز را بررسی کند، کافیست محاسبات را با افزودن کلمه کلیدی checked انجام دهیم. این کار به سربار اجرای برنامه اضافه می کند اما در مقابل با ارسال exception از نوع OverflowException به برنامه نویس کمک می کند تا سرریز را متوجه شود و در صورت نیاز آن را کنترل کند.

int number = int.MaxValue;
int sum = checked(number + 1);

اگر لازم است برای چندین خط محاسبه سرریز بررسی شود، لازم نیست هرکدام را جداگانه در وضعیت checked قرار دهید. تنها لازم است به جای ( ) از { } استفاده کنید و درون آن هر تعداد دستور که می خواهید، قرار دهید.
در نهایت اگر لازم بود برای کل پروژه سرریز بررسی شود، به properties پروژه برید و از شاخه Build گزینه ی Advance را انتخاب کنید. در پنجره ی باز شده بررسی سرریز را فعال و یا غیر فعال کنید.
موافقین ۰ مخالفین ۰ ۹۲/۰۶/۰۳
cscience

سیشارپ

C#

نظرات (۰)

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

ارسال نظر

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