19-10-12, 10:59 AM
كاتب الموضوع : lo2i
- نختار لغة السي بلس بلس
- نحدد ال win32 console application
- نحدد السم المشروع الذي نريده .
- واخيراً نضغط على Ok
--------------------------------------------
فتظهر الشاشة التالية ,,
لو كنت من متابعيي الدورة من البداية لعرفت الفرق هنا
ففي الدروس الاولى كنا نضغط على زر Next للذهاب للنافذة التالية ,,
واما الان فسوف نضغط على زر Finish للانتهاء من المعالج وتضميين
ملفات ال Header ضمن المشروع ,,
-------------------------------
لو تلاحظ في الدروس الماضية اننا كنا عند بداية فتح البرنامج
ستجد هذه النافذة فارغة تقريباً لانها لاتحتوي على ملفات ال Header
التي موجودة في الصورة حاليًا , ملفات ال Header التي موجودة في الصورة حالياً ,, تتمثل في التالي
وكما نعلم ان لكل مشروع يتكون من ثلاث ملفات رئيسية ,,
وهي :-
وطبعاً سوف تجد الملف الذي قمت بتمسية مشروعك به على انه ملف Cpp
وعند الضغط على الملف المسمى بـ lo2i.cpp فسوف تظهر لك الشاشة التالية ,,
كما هو موضح في الصورة تجد هذا الكود مكتوب عند فتح الصفحة ,,
ولاحظ هنا استدعائنا لهذه ال HEADER هنا
لاحظ الفرق بين تعريف هذا المكتبة هنا (الهيدر)
وبين هذا الهيدر (المكتبة )
لو تلاحظ انه في التعريف الاول استخدمنا هذا المعامل لتحديد اسم الملف < >
وانا في التعريف الثاني فاستخدمنا هذا " "
ولتعرف بماذا استفدنا من تعريف هذه المكتبة يمكنك تتبع لاصورة التالية ,,
عندما تقوم بمناداة الهيدر وتضغط عليه بزر الفارة اليمين !!
يظهر لك خيار (open document "stdafx.h")
عندما تقوم بالضبط عليه ,,,
سوف تفتح لك شاشة كود للهيدر stdafx.h
وهذا هو الكود الذي كتب في داخله ...
كما هو موضح لديك
اي سطر يبدأ بالرمز // فهو لاينفذ في البرنامج وهو للتوضيح فقط
ولقد قمت بشرح ذلك هنا ,,
-----------------------------------------
على العموم ,,
تعرفنا ان المكتبة stdafx.h
تضم داخلها هذه المكتاب وملفات ال header ..
---------------------------------------
الامر الذي اريد ان اوضحه قبل انتقالك للدروس القادمة
انه لم يتغير الشيء الكثير في اتجاه برمجتنا للسي بلس بلس ..
ولكن سنضطر في كتابة اي برنامج من ذكر مكتبة ال stdafx.h في البداية
ولن يتغير اي شي اطلاقاً ,,
فمثلاً هذا الكود لحساب مساحة المستطيل اعتماداً على طوله وعرضه
سنقوم بكتابته بعد ان نضيف مكتبة ال stdafx.h للمشروع
=-=-=-=-=-=-=-=-=-=-=-=
ملاحظة هامة جداً جداً ,,,
ننادي ملف الهيدر stdafx.h من خلال الملف cpp
الذي ينشأ اوتوماتيكياً عند انشاء المشروع الجديد ,,
=-=-=-=-=-=-=-=-=-=
ندخل على الملف
lo2i.Cpp
ونمسح كل شيء بداخله ,,
ونبدأ هذا الكود ,,
------------------------------------------------------
شرح مبسط للكود السابق ,,
في بداية الكود قمنا بتعريف الهيدر stdafx.h
لو قمت بنسيان هذه المكتبة سوف يعطيك المحرر خطأ عند تشغيل البرنامج ..
وبعد قمنا بعمل برنامج يحسب طول + عرض شكل ما ,,
ثم يعطيك في النهاية مساحة الشكل
مع العلم اني وضعت جملة شرطية if وهي تنبأ اذا ادخل المستخدم الرقم صفر للطول او للعرض ولكن لم , ولكن لم اضع لها الامر الذي تستطيع اضافته لعدم قبوك القيم الاقل من صفر
الجملة تكون هكذا بعد التعديل
ونفس الشيء تستخدمه مع العرض ايضاً ..
-----------------------------------
كما يمكنك صناعة ملف HEADER خاص فيك
وتضع فيه كل اكوداك المهمة لتنفيذ شيء واحد
لتقلل عليك من الجهد والتعب ..
وتقوم بداخلها بوضع كلاساتك , والدوال التي تحتاجها في عملك ..
ثم تنادي اسم ال Header من خلال ال Cpp
وبإذنه تعالى سوف نتعلم في دروس لاحقة كيفية عمل ملف header
[SIZE=4]Cpp ومناداته من خلال ال
--=-=--
معلومة اخيرة ...
.H كل ملفات الهيدر تنتهي بحرف
-----------------=------------------=-------------------=-------------
انتهى الدرس ,,
ماكان صواباً فمن الله تعالى وماكان خطأ فمن نفسي ومن الشيطان ومن النعس
سلام عليكم
[/SIZE]
السلام عليكم ورحمة الله وبركاته
(( وماأوتيتم من العلم إلا قليلاً ))
-------------------------------------------------------------------------------------------------------------------------------
الدرس السابع في دورة السي بلس بلس
-------------------------------------------------------------------------------------------------------------------------------
سنتعلم في هذا الدرس ان شاء الله :_
- التعرف كيفية فتح مشروع يحتوي على ملفات ال Header
- التعرف على مكتبة ال stdafx.h
- لماذا ملفات ال Header
- تسهيل البرمجة بمناداة ملف ال Header بالكود ..
----------------------------------------------------
اولاً :- التعرف كيفية فتح مشروع يحتوي على ملفات ال Header
تابع الصور ,,,
عند فتح الفيجوال ستوديو 2008 وتضغك على ال Ctrl + N
فسوف تظهر لك هذه الشاشة ,, هنا
عند فتح الفيجوال ستوديو 2008 وتضغك على ال Ctrl + N
فسوف تظهر لك هذه الشاشة ,, هنا
- نختار لغة السي بلس بلس
- نحدد ال win32 console application
- نحدد السم المشروع الذي نريده .
- واخيراً نضغط على Ok
--------------------------------------------
فتظهر الشاشة التالية ,,
لو كنت من متابعيي الدورة من البداية لعرفت الفرق هنا
ففي الدروس الاولى كنا نضغط على زر Next للذهاب للنافذة التالية ,,
واما الان فسوف نضغط على زر Finish للانتهاء من المعالج وتضميين
ملفات ال Header ضمن المشروع ,,
-------------------------------
لو تلاحظ في الدروس الماضية اننا كنا عند بداية فتح البرنامج
ستجد هذه النافذة فارغة تقريباً لانها لاتحتوي على ملفات ال Header
التي موجودة في الصورة حاليًا , ملفات ال Header التي موجودة في الصورة حالياً ,, تتمثل في التالي
- stdafx.h
- targetvet.h
وكما نعلم ان لكل مشروع يتكون من ثلاث ملفات رئيسية ,,
وهي :-
- HEADER FILES
- RESOURCES FILES
- SOURCE FILES
وعند الضغط على الملف المسمى بـ lo2i.cpp فسوف تظهر لك الشاشة التالية ,,
كما هو موضح في الصورة تجد هذا الكود مكتوب عند فتح الصفحة ,,
كود :
[color=#000000][COLOR=#0000bb][/color][COLOR=#ff8000]// lo2i.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
[/COLOR][color=#0000bb]int _tmain[/color][color=#007700]([/color][color=#0000bb]int argc[/color][color=#007700], [/color][color=#0000bb]_TCHAR[/color][color=#007700]* [/color][color=#0000bb]argv[/color][COLOR=#007700][])
{
return [/COLOR][color=#0000bb]0[/color][COLOR=#007700];
}
[/COLOR][color=#0000bb][/color][/COLOR]
ولاحظ هنا استدعائنا لهذه ال HEADER هنا
كود :
[color=#000000][COLOR=#0000bb][/color][COLOR=#ff8000]#include "stdafx.h"
[/COLOR][color=#0000bb][/color][/COLOR]
لاحظ الفرق بين تعريف هذا المكتبة هنا (الهيدر)
كود :
[color=#000000][COLOR=#0000bb][/color][COLOR=#ff8000]#include <iostream>
[/COLOR][color=#0000bb][/color][/COLOR]
وبين هذا الهيدر (المكتبة )
كود :
[color=#000000][COLOR=#0000bb][/color][COLOR=#ff8000]#include "stdafx.h"
[/COLOR][color=#0000bb][/color][/COLOR]
لو تلاحظ انه في التعريف الاول استخدمنا هذا المعامل لتحديد اسم الملف < >
وانا في التعريف الثاني فاستخدمنا هذا " "
ولتعرف بماذا استفدنا من تعريف هذه المكتبة يمكنك تتبع لاصورة التالية ,,
عندما تقوم بمناداة الهيدر وتضغط عليه بزر الفارة اليمين !!
يظهر لك خيار (open document "stdafx.h")
عندما تقوم بالضبط عليه ,,,
سوف تفتح لك شاشة كود للهيدر stdafx.h
وهذا هو الكود الذي كتب في داخله ...
كود :
[color=#000000][COLOR=#0000bb][/color][COLOR=#ff8000]// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#pragma once
#include "targetver.h"
#include <stdio.h>
#include <tchar.h>
// TODO: reference additional headers your program requires here
[/COLOR][color=#0000bb][/color][/COLOR]
كما هو موضح لديك
اي سطر يبدأ بالرمز // فهو لاينفذ في البرنامج وهو للتوضيح فقط
ولقد قمت بشرح ذلك هنا ,,
-----------------------------------------
على العموم ,,
تعرفنا ان المكتبة stdafx.h
تضم داخلها هذه المكتاب وملفات ال header ..
كود :
[color=#000000][COLOR=#0000bb][/color][COLOR=#ff8000]#include "targetver.h"
#include <stdio.h>
#include <tchar.h>
[/COLOR][color=#0000bb][/color][/COLOR]
الامر الذي اريد ان اوضحه قبل انتقالك للدروس القادمة
انه لم يتغير الشيء الكثير في اتجاه برمجتنا للسي بلس بلس ..
ولكن سنضطر في كتابة اي برنامج من ذكر مكتبة ال stdafx.h في البداية
ولن يتغير اي شي اطلاقاً ,,
فمثلاً هذا الكود لحساب مساحة المستطيل اعتماداً على طوله وعرضه
سنقوم بكتابته بعد ان نضيف مكتبة ال stdafx.h للمشروع
=-=-=-=-=-=-=-=-=-=-=-=
ملاحظة هامة جداً جداً ,,,
ننادي ملف الهيدر stdafx.h من خلال الملف cpp
الذي ينشأ اوتوماتيكياً عند انشاء المشروع الجديد ,,
=-=-=-=-=-=-=-=-=-=
ندخل على الملف
lo2i.Cpp
ونمسح كل شيء بداخله ,,
ونبدأ هذا الكود ,,
كود :
[COLOR=#000000][COLOR=#0000bb]
[/COLOR][COLOR=#ff8000]#include "stdafx.h"
#include <iostream>
[/COLOR][color=#0000bb]using namespace std[/color][COLOR=#007700];
[/COLOR][color=#0000bb]int main[/color][COLOR=#007700]()
{
[/COLOR][color=#0000bb]int height[/color][color=#007700],[/color][color=#0000bb]width[/color][COLOR=#007700];
[/COLOR][color=#0000bb]hhh[/color][COLOR=#007700]:
[/COLOR][color=#0000bb]system[/color][color=#007700]([/color][color=#dd0000]"cls"[/color][COLOR=#007700]);
[/COLOR][color=#0000bb]cout [/color][color=#007700]<< [/color][color=#dd0000]"the height of shape is :\t" [/color][color=#007700]<< [/color][color=#0000bb]endl[/color][COLOR=#007700];
[/COLOR][color=#0000bb]cin [/color][color=#007700]>> [/color][color=#0000bb]height [/color][COLOR=#007700];
if ([/COLOR][color=#0000bb]height [/color][color=#007700]== [/color][color=#0000bb]0 [/color][COLOR=#007700])
{
[/COLOR][color=#0000bb]cout [/color][color=#007700]<< [/color][color=#dd0000]"the height of shape can not be zero or less than zero\n" [/color][color=#007700]<< [/color][color=#0000bb]endl[/color][COLOR=#007700];
[/COLOR][color=#0000bb]goto hhh[/color][COLOR=#007700];
}
[/COLOR][color=#0000bb]www[/color][COLOR=#007700]:
[/COLOR][color=#0000bb]cout [/color][color=#007700]<< [/color][color=#dd0000]"the width of shape is :\t" [/color][color=#007700]<< [/color][color=#0000bb]endl[/color][COLOR=#007700];
[/COLOR][color=#0000bb]cin [/color][color=#007700]>> [/color][color=#0000bb]width[/color][COLOR=#007700];
if ([/COLOR][color=#0000bb]width [/color][color=#007700]== [/color][color=#0000bb]0 [/color][COLOR=#007700])
{
[/COLOR][color=#0000bb]cout [/color][color=#007700]<< [/color][color=#dd0000]"the width of shape can not be zero or less than zero\n" [/color][color=#007700]<< [/color][color=#0000bb]endl[/color][COLOR=#007700];
[/COLOR][color=#0000bb]goto www[/color][COLOR=#007700];
[/COLOR][color=#0000bb]system[/color][color=#007700]([/color][color=#dd0000]"cls"[/color][COLOR=#007700]);
}
[/COLOR][color=#0000bb]cout [/color][color=#007700]<< [/color][color=#dd0000]"--------------------------------" [/color][color=#007700]<< [/color][color=#0000bb]endl[/color][COLOR=#007700];
[/COLOR][color=#0000bb]int irea [/color][COLOR=#007700];
[/COLOR][color=#0000bb]irea[/color][color=#007700]=[/color][color=#0000bb]height[/color][color=#007700]+[/color][color=#0000bb]width[/color][COLOR=#007700];
[/COLOR][color=#0000bb]cout [/color][color=#007700]<< [/color][color=#dd0000]"if irea of the shape is :" [/color][color=#007700]<< [/color][color=#0000bb]irea [/color][color=#007700]<< [/color][color=#0000bb]endl[/color][COLOR=#007700];
[/COLOR][color=#0000bb]system[/color][color=#007700]([/color][color=#dd0000]"pause"[/color][COLOR=#007700]);
return [/COLOR][color=#0000bb]0[/color][COLOR=#007700];
}
[/COLOR][color=#0000bb][/color][/COLOR]
------------------------------------------------------
شرح مبسط للكود السابق ,,
في بداية الكود قمنا بتعريف الهيدر stdafx.h
لو قمت بنسيان هذه المكتبة سوف يعطيك المحرر خطأ عند تشغيل البرنامج ..
وبعد قمنا بعمل برنامج يحسب طول + عرض شكل ما ,,
ثم يعطيك في النهاية مساحة الشكل
مع العلم اني وضعت جملة شرطية if وهي تنبأ اذا ادخل المستخدم الرقم صفر للطول او للعرض ولكن لم , ولكن لم اضع لها الامر الذي تستطيع اضافته لعدم قبوك القيم الاقل من صفر
الجملة تكون هكذا بعد التعديل
كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]if ([/color][color=#0000bb]height [/color][color=#007700]== [/color][color=#0000bb]0 [/color][color=#007700]|| [/color][color=#0000bb]height [/color][color=#007700]<=[/color][color=#0000bb]0[/color][COLOR=#007700])
[/COLOR][color=#0000bb][/color][/COLOR]
ونفس الشيء تستخدمه مع العرض ايضاً ..
-----------------------------------
كما يمكنك صناعة ملف HEADER خاص فيك
وتضع فيه كل اكوداك المهمة لتنفيذ شيء واحد
لتقلل عليك من الجهد والتعب ..
وتقوم بداخلها بوضع كلاساتك , والدوال التي تحتاجها في عملك ..
ثم تنادي اسم ال Header من خلال ال Cpp
وبإذنه تعالى سوف نتعلم في دروس لاحقة كيفية عمل ملف header
[SIZE=4]Cpp ومناداته من خلال ال
--=-=--
معلومة اخيرة ...
.H كل ملفات الهيدر تنتهي بحرف
-----------------=------------------=-------------------=-------------
انتهى الدرس ,,
ماكان صواباً فمن الله تعالى وماكان خطأ فمن نفسي ومن الشيطان ومن النعس
سلام عليكم
والان جرب واعطيني النتيجة
====================
========
==
انتظروا الدرس الثامن !!