PDA

View Full Version : سوال: توضیح درمورد throw



css-man
شنبه 07 اردیبهشت 1392, 21:40 عصر
دوستان میشه توضیح بدید throw کارش چیه؟

MMSHFE
شنبه 07 اردیبهشت 1392, 22:03 عصر
throw برای مواقعی هست که خودتون بخواین بصورت دستی یک Exception تولید کنید. بیشتر برای Exceptionهای سفارشی که توسط خودتون تولید میشن کاربرد داره اما میشه از اون برای تولید Exceptionهای پیشفرض هم استفاده کرد. برای مثال:


function Divide($a, $b) {
if ($b == 0) {
throw new Exception('Division by zero');
}
return $a / $b;
}

try {
echo '<p>' . Divide(5, 2) . '</p>' . PHP_EOL;
echo '<p>' . Divide(5, 0) . '</p>' . PHP_EOL;
}
catch (Exception $e) {
echo '<p>' . $e->getMessage() . '</p>' . PHP_EOL;
}

rezaonline.net
شنبه 07 اردیبهشت 1392, 22:03 عصر
کلید واژه استفاده از خطاهاست در پی اچ پی .
معمولا اینطوری نوشته میشه
throw new Exception();
یعنی یک خطای جدید صادر کن و برنامه رو متوقف کن .
حالا اگه کلاسی داشته باشی که از Exception ارث بری کرده باشه ، مثلا یه استایل به خطا بدی و به قالب دلخواه خودت نشون بدی میتونی از اون استفاده کنی .

class ExampleException extends Exception
{
//
}

throw new ExampleException();
بهتره Exception ها یا مدیریت خطا هارو در پی اچ پی بررسی کنید .

FingerPrint
شنبه 29 تیر 1392, 22:46 عصر
دوست من
میشه محبت کنی در سی شارپ هم چنین مثالی بزنید؟
مثلا تقسیم برصفر رو
سپاس

بهزاد علی محمدزاده
شنبه 29 تیر 1392, 23:05 عصر
لینک برای تقسیم بر صفر . (http://msdn.microsoft.com/en-us/library/ms173160.aspx) و می تونی پیغام دلخواه خودت رو به عنوان پارامتر برای سازنده اش ارسال کنی .
System.DivideByZeroException("خطای تقسیم بر صفر")

منتهی تو کنسول فارسی نشون نمیده توی پروژه ویندوز تست کن . من هم راه حل فارسی نشون دادن و بلد نیستم .