C++ را امتحان کنید و بگیرید(C++ try and catch)

بررسی استثناها در C++ از سه کلمه کلیدی تشکیل شده است: try، پرتاب و catch:


عبارت try به شما امکان می دهد بلوکی از کد را تعریف کنید.
برای خطاها در حین اجرا آزمایش شد.


کلمه کلیدی پرتاب زمانی که
مشکل شناسایی شد، که به ما اجازه می دهد یک خطای سفارشی ایجاد کنیم.


عبارت catch به شما امکان می دهد بلوکی از کد را تعریف کنید
اگر خطایی در بلوک try رخ داد، اجرا شود.


کلمات کلیدی try و catch
دو به دو بیایید:




مثال



try {
  // Block of code to try
  throw exception;
// Throw an exception when a problem arise
}
catch () {

  // Block of code to handle errors
}



مثال زیر را در نظر بگیرید:




مثال



try {
  int age = 15;
  if (age > 18) {
   
cout << "Access granted - you are old enough.";
  } else {
   
throw (age);
  }
}
catch (int
myNum) {
  cout << "Access denied - You must be at least 18 years
old.n";
  cout << "Age is: " << myNum;
}




مثال توضیح داده شد


ما از بلوک try برای آزمایش برخی از کدها استفاده می کنیم: اگر متغیر age کمتر از 18، یک استثنا را پرتاب می‌کنیم و آن را در مان مدیریت می‌کنیم. بلوک.


در بلوک catch، خطا را دریافت می کنیم و
در مورد آن کاری کنید. گیر
دستور یک پارامتر می گیرد: در مثال ما از یک متغیر int (myNum استفاده می کنیم ) (زیرا ما استثنایی از نوع int را در بلوک try قرار می دهیم (سن))،
برای خروجی مقدار age.



اگر خطایی رخ نداد (مثلاً اگر سن 20 باشد به جای 15،
یعنی بزرگتر خواهد بود
بیش از 18)، بلوک catch نادیده گرفته می شود:



مثال



int age = 20;




همچنین می‌توانید از کلمه کلیدی throw برای خروجی یک شماره مرجع، مانند
شماره/کد خطای سفارشی برای اهداف سازماندهی:



مثال



try {
  int age = 15;
  if (age > 18) {
   
cout << "Access granted - you are old enough.";
  } else {
   
throw 505;
  }
}
catch (int myNum) {
 
cout << "Access denied - You must be at least 18 years old.n";
 
cout << "Error number: " << myNum;
}