سلام
توي پرانتز catch چي بايد بنويسم تا هر خطايي كه پيش اومد برنامه به قسمت catch بره ؟
معادل كد on error resume next وي بي تو C++ چيه؟
چطوري ميشه description خطا رو درآورد؟
ممنون
يكم بيشتر توضيح مي دي؟
throw چيكار مي كنه؟ نقش test يا 'a' كه بعد throw نوشتي چيه؟!
سه تا نقطه catch چيه؟
دیگه از شما بعیده فقط کافیه برنامه رو اجرا کنی
اون 3 تا نقطه یعنی هر اروری و اون throw بیانگر خطا و 'a' هم ورودی هیت که به عنوان خطا در نظر گرفته شده
نقل قول: دیگه از شما بعیده فقط کافیه برنامه رو اجرا کنی
ببخشید اگه تو C++ هنوز زیاد قوی نشدم سوال می کنم !!
من آخرش نفهمیدم کار دستور throw چیه ؟!
سوال دوم و سوم . . . ؟!
سلام
دستور throw برای مدیریت خطا و استثنا ها توی برنامه بکار میره
دستور throw اگر داخل یه تابع باشه و اجرا بشه اون تابع ترک میشه و برنامه به جایی که catch هست پرش می کند
یه مثال آپلود کردم.
مثلا توی این کد برنامه چون تقسیم بر 0 باعث ایجاد خطا در برنامه میشه ، پس باید کاری کنیم که در هنگام رسیدن به صفر برنامه متوقف شه و بفهمیم کجا error اتفاق افتاده
catch(...) هم برای تعریف error هایی که برای ما نا شناخته هستن و برای اونا class تعریف نکردیم بکار میره
سلام
این کد کار نکرد !!
اطلاعات من تا اینجا اینه :
در صورتی که دستورات توی بلوک try دچار خطا بشن برنامه به قسمت catch میره. هر catch یه ثابت داره که مشخص کننده یه نوع خطا هست و سه نقطه هم یعنی هر نوع خطایی. تا اینجا هیچ کاری با throw نداشتیم. پس چرا این کد کار نمی کنه ؟
کد:
#include <iostream>
using namespace std;
void main()
{
try
{
int a,b;
cin >> a >> b;
cout << a/b;
}
catch(...)
{
cout << "error";
}
}
به b صفر بدید.