یه سوال داشتم در خصوص اینکه وقتی در انتقال اطلاعات(Casting) بین دو تایپ همزاد overflow داشته باشیم که در واقع یک Logical Error میباشد به چه نحوی می تونیم این خطای منطقی را به Run Time Error تبدیل کنیم و يا از بروز خطا جلوگيري كنيم ؟؟
یه سوال داشتم در خصوص اینکه وقتی در انتقال اطلاعات(Casting) بین دو تایپ همزاد overflow داشته باشیم که در واقع یک Logical Error میباشد به چه نحوی می تونیم این خطای منطقی را به Run Time Error تبدیل کنیم و يا از بروز خطا جلوگيري كنيم ؟؟
ببخشيد متوجه جوابتون نشدم يكم توضيح ميدين ؟ من مي خوام خطا بده كه متوجه بشم overflow رخ داده يا نه
لطفا یک مثال قرار بدید.
همانطور که اشاره کردین هنگام casting خطای overflow اتفاق نمی افته!!! برای رفع این مشکل می تونید از checked به صورت زیر استفاده کنید
int i = 55566666;
checked
{
try
{
short s = (short)i;
}
catch (OverflowException ex)
{
// your code
}
}