رفع خطاها
بیشتر اوقات هنگام برنامه نویسی با خطا مواجه میشویم. تقریباً همه برنامههایی که امروزه میبینید حداقل از داشتن یک خطا رنج میبرند. خطاها میتوانند برنامه شما را با مشکل مواجه کنند. در سی شارپ سه نوع خطا وجود دارد :
خطای کامپایلری
این نوع خطا از اجرای برنامه شما جلوگیری میکند. این خطاها شامل خطای دستور زبان میباشد. این بدین معنی است که شما قواعد کد نویسی را رعایت نکردهاید. یکی دیگر از موارد وقوع این خطا هنگامی است که شما از چیزی استفاده میکنید که نه وجود دارد و نه ساخته شده است. حذف فایلها یا اطلاعات ناقص در مورد پروژه ممکن است باعث به وجود آمدن خطای کامپایلری شود. استفاده از برنامه بوسیله برنامه دیگر نیز ممکن است باعث جلوگیری از اجرای برنامه و ایجاد خطای کامپایلری شود.
خطاهای منطقی
این نوع خطا در اثر تغییر در یک منطق موجود در برنامه به وجود میآید. رفع این نوع خطاها بسیار سخت است چون شما برای یافتن آنها باید کد را تست کنید. نمونهای از یک خطای منطقی برنامهای است که دو عدد را جمع میکند ولی حاصل تفریق دو عدد را نشان میدهد. در این حالت ممکن است، برنامه نویس علامت ریاضی را اشتباه تایپ کرده باشد.
استثناء
این نوع خطاها هنگامی رخ میدهند که برنامه در حال اجراست. این خطا هنگامی روی میدهد که کاربر یک ورودی نامعتبر به برنامه بدهد و برنامه نتواند آن را پردازش کند. ویژوال استودیو و ویژوال سی شارپ دارای ابزارهایی برای پیدا کردن و برطرف کردن خطاها هستند. وقتی در محیط کدنویسی در حال تایپ کد هستیم یکی از ویژگیهای ویژوال استودیو تشخیص خطاهای ممکن قبل از اجرای برنامه است. زیر کدهایی که دارای خطای کامپایلری هستند خط قرمز کشیده میشود.
هنگامی که شما با ماوس روی این خطوط توقف کنید توضیحات خطا را مشاهده میکنید. شما ممکن است با خط سبز هم مواجه شوید که نشان دهنده اخطار در کد است ولی به شما اجازه اجرای برنامه را میدهند. به عنوان مثال ممکن است شما یک متغیر را تعریف کنید ولی در طول برنامه از آن استفاده نکنید. (در درسهای آینده توضیح خواهیم داد).
درباره رفع خطاها در آینده توضیح بیشتری میدهیم. ErrorList (لیست خطاها) که در شکل زیر با فلش قرمز نشان داده شده است به شما امکان مشاهده خطاها، هشدارها و رفع آنها را میدهد. برای باز کردن Error List میتوانید به مسیر View > Other Windows > Error List بروید.
همانطور که در شکل زیر مشاهده میکنید هرگاه برنامه شما با خطا مواجه شود لیست خطاها در Error List نمایش داده میشود.
در شکل بالا تعدادی خطا همراه با راه حل رفع آنها در Error List نمایش داده شده است. Error List دارای چندین ستون است که به طور کامل جزییات خطاها را نمایش میدهند.
ستون | توضیحات |
Description | توضیحی درباره خطا |
File | فایلی که خطا در آن اتفاق افتاده است |
Line | شماره خطی از فایل که دارای خطاست |
Column | ستون یا موقعیت افقی خطا در داخل خط |
Project | نام پروژهای که دارای خطاست. |
اگر برنامه شما دارای خطا باشد و آن را اجرا کنید با پنجره زیر روبرو میشوید :
مربع کوچک داخل پنجره بالا را تیک زنید چون دفعات بعد که برنامه شما با خطا مواجه شود دیگر این پنجره به عنوان هشدار نشان داده نخواهد شد. با کلیک بر روی دکمه Yes برنامه با وجود خطا نیز اجرا میشود. اما با کلیک بر روی دکمه NO اجرای برنامه متوقف میشود و شما باید خطاهای موجود در پنجره Error List را بر طرف نمایید. یکی دیگر از ویژگیهای مهم پنجره Error List نشان دادن قسمتی از برنامه است که دارای خطاست. با یک کلیک ساده بر روی هر کدام خطاهای موجود در پنجره Error List ، محل وقوع خطا نمایش داده میشود.
سلام من پروژه ای ساختم بعد با اینستا شیلد خواستم فایل setup بسازم اما پشیمون شدم و کنسل کردم الان پروژه دیگه لود نمیشه.لطفا کمکم کنید
سلام
ممنون میشم سوالتونو تو بخش پرسش و پاسخ مطرح بفرمایید
سلام
ببخشید مزاحم میشم اما میخوام بدونم چرا کد Input برام کار نمیکنه
برای استفاده در پروژه یونیتی میخوام و کتاب خونه های تحت استفاده در زمان عمل نکردن کد UnityEngine ….. System.Collections.Generic ……
System.Collections …. هستند.
ایا نیاز هست چیزی اپدیت بشه ؟
اگه باید اپدیت بشه اون چیه؟
و من برای رفع مشکلم باید چیکار کنم؟
سلام من یه برنمه نویس تازه کار هستم و توی ویژوال استودیو یک کنسول اپ ساده نوشتم ولی با ارور invalid token رو به رو شدم ینی چی ؟ میشه کمک کنین
سلام من در ویژوال استادیو خیلی از کدهام بالا نمیاد کد های اصلی ام هستن میشه بگین مشکل از کجا میتونه باشه
سلام، ممنون میشم سوالتونو همراه با عکس تو بخش پرسش و پاسخ مطرح بفرمایید
سلام وقتتون بخیر خطای کد CS1022 به چه معنیه؟
سلام، اون جمله ای که جلوی این خطا نوشته شده رو هم بنویسید تا راهنماییتون کنم
بعد از اجرای برنامه سی شارپ2019 این خطاها مشاهده شد لطفا همکاری کنید جهت رفع مشکل از شما کمال تشر را دارم.
‘sawq.exe’ (CLR v4.0.30319: DefaultDomain): Loaded ‘C:\Windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll’. Skipped loading symbols. Module is optimized and the debugger option ‘Just My Code’ is enabled.
‘sawq.exe’ (CLR v4.0.30319: DefaultDomain): Loaded ‘C:\Users\39423214774\source\repos\sawq\sawq\bin\Debug\sawq.exe’. Symbols loaded.
The program ‘[13152] sawq.exe: Program Trace’ has exited with code 0 (0x0).
The program ‘[13152] sawq.exe’ has exited with code 0 (0x0).
سوالتونو تو بخش پرسش و پاسخ مطرح بفرمایید
با تشکر
سلام میشه معنی این ارور رو بگید
Error 1 Type ‘TaxiTel.Form3’ already defines a member called ‘button2_Click’ with the same parameter types C:\Users\majid\Documents\Visual Studio 2012\Projects\p\TaxiTel\TaxiTel\Form3.cs 64 22 TaxiTel
سلام، ممنون میشم سوالتونو تو بخش پرسش و پاسخ مطرح بفرمایید
این همش خطاست، کلا میخواین چکار کنید؟
خطای این کجاست؟؟؟ ;int B = h2 ,m2 ,s2
با سلام
چرا توی visual studio 2012 دستور convert تعریف نشده است؟ برای تبدیل به متغیر چکار باید بکنم؟
سلام
Convert یک کلاس هست (حرف اولش یعنی c رو باید به صورت بزرگ بنویسین) که تو فضای نام System قرار داره و باید در اولین خط برنامه کد زیر رو بنویسین
در ضمن این کلاس از ویژوال استودیو 2002 تا 2019 هستش