تفاوت برنامه نویسی MFC و WIN32 در ویژوال سی
در محیط ++Visual C پروژه های متنوعی می توانید ایجاد کرد که دو نوع آنها استفاده بیشتری دارد. یکی پروژه های MFC و دیگری Win32.
این دو نوع پروژه چه تفاوتی دارند و به چه کارمان میآیند؟
تفاوت آنها با پروژهی کنسول ساده چیست؟ پروژه های Win32از اسم win32 پیداست که منظور پروژه هاییست که برای ویندوز 32 بیتی نوشته می شود (البته اگر شما برنامه 64 بیتی هم بخواهید بنویسید باز همین نوع پروژه را می توانید استفاده کنید). ویندوز یک سری کتابخانه های پویا یا همان dll دارد که در این کتابخانه ها توابع متعددی برای کار با پنجره ها در محیط ویندوز وجود دارد. این توابع که به عنوان API (مخفف Application Programming Interface) مشهور هستند نوشته شده اند که کار میکروسافت و سیستم عامل ویندوزش راه بیفتد. لیکن مایکروسافت زحمت کشیده و بخش عظیمی از این API را در اختیار برنامه نویسان هم قرار داده که کار آنها هم لنگ نماند. مثلا تابع MessageBox که یک پیام را نمایش می دهد، یا تابع CreateWindowEx که یک پنجره ایجاد می کند، یا تابع ShellExecute که یک برنامه را اجرا می کند و یا تابع GetCommState که وضعیت پورت Com (ارتباط سریال) را مشخص می کند و توابعی از این دست، همگی در فایلهایی مثل user32.dll و kernel32.dll و ... تعریف شده اند. به کمک این توابع شما می توانید پنجره بسازید، دکمه تعریف کنید، منو بسازید، نوار ابزار ایجاد کنید و هر آنچه در یک برنامه تحت ویندوز نوعی می بینید، ایجاد کنید. لیکن تمام کارها در قالب کدنویسی صورت می گیرد. پروژه های MFCMFC مخفف Microsoft Foundation Classes یعنی کلاسهای پایه ای میکروسافت، کتابخانه ای است که شرکت میکروسافت جهت تسهیل برنامه نویسی برای ویندوز توسعه داده است. این کتابخانه چیزی نیست جز تعدادی کلاس که به صورت پوششی بر روی API ویندوز قرار گرفته و کار کردن با پنجره ها را باز هم آسانتر کرده است. به عبارتی هزاران توابع موجود در API در قالب تعدادی کلاس و به صورت مرتب درآمده اند. مثلا توابع کار با پنجره در کلاس CWnd قرار گرفته اند؛ توابع کار با دکمه در کلاس CButton و توابع کار با دیالوگ در کلاس CDialog واقع شده اند. بسیاری از کلاسهای MFC از جمله CButton، CDialog، CEdit و CRichEdit فرزند کلاس CWnd هستند. به نقل پی سی کدنویس ![]() مرتبط با موضوع : آموزش c++(ساختار های کنترلی - حلقه while) [پنجشنبه، 1 دي ماه ، 1390] آموزش c++(ساختار های کنترلی) [پنجشنبه، 1 دي ماه ، 1390] آموزش c++(نحوه تغییر متغییرها) [پنجشنبه، 1 دي ماه ، 1390] آموزش C++ (تعریف و معرفی متغییرها) [پنجشنبه، 1 دي ماه ، 1390] نوشتن اولین برنامه با ++C [سه شنبه، 4 مرداد ماه ، 1390] سی ++ [سه شنبه، 6 ارديبهشت ماه ، 1390] ۲۰۱۱ ++C روانه بازار می شود [يكشنبه، 21 فروردين ماه ، 1390] زبان برنامه نویسی سی (C) [سه شنبه، 25 خرداد ماه ، 1389] آموزش C (بخش 6) :: تابع ()Printf [دوشنبه، 19 بهمن ماه ، 1388] آموزش C (بخش 5) :: تبدیل انواع متغیرها [دوشنبه، 19 بهمن ماه ، 1388] |
آخرین مقالات
پربیننده ترین مقالات
مقالات تصادفی
امتیاز دهی به مطلب
تعداد آراء: 1 ![]() انتخاب ها
|
