CSCIENCE

CSCIENCE

۲۱ مطلب با کلمه‌ی کلیدی «C#» ثبت شده است

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


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

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

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

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