# دليل شامل عن لغة C++



لغة C++ هي واحدة من أكثر لغات البرمجة شعبية واستخدامًا في العالم. تم تطويرها في أوائل الثمانينيات على يد بيارن ستروستروب (Bjarne Stroustrup) كتحسين للغة C، وهي تدعم البرمجة الكائنية (Object-Oriented Programming) والبرمجة الإجرائية (Procedural Programming). في هذا الدليل، سنستعرض خصائص C++، ومميزاتها، وكيفية البدء في استخدامها.


## 1. ما هي C++؟


C++ هي لغة برمجة متعددة النماذج، مما يعني أنها تدعم عدة أساليب في البرمجة. تُستخدم على نطاق واسع في تطوير البرمجيات، الألعاب، نظم التشغيل، التطبيقات عالية الأداء، وأكثر من ذلك.


### ميزات C++:

- **أداء عالٍ**: تتيح C++ التحكم الكامل في الموارد، مما يجعلها مثالية للتطبيقات التي تتطلب أداءً عاليًا.

- **البرمجة الكائنية**: تدعم C++ البرمجة الكائنية، مما يسهل تنظيم الكود وإعادة استخدامه.

- **توافق مع C**: C++ متوافقة مع C، مما يسمح لك باستخدام الكود المكتوب بلغة C.


## 2. تثبيت بيئة التطوير


### أ. اختيار بيئة تطوير

يمكنك استخدام أي محرر نصوص لكتابة كود C++، لكن من الأفضل استخدام بيئة تطوير متكاملة (IDE) لتسهيل العمل. بعض الخيارات الشائعة تشمل:

- **Visual Studio**: IDE قوي من مايكروسوفت يدعم C++.

- **Code::Blocks**: IDE مجاني ومفتوح المصدر.

- **Eclipse**: يدعم C++ من خلال إضافة CDT.


### ب. تثبيت المترجم

يجب تثبيت مترجم C++ على جهازك. بعض المترجمات الشائعة تشمل:

- **GCC**: مترجم مفتوح المصدر يعمل على أنظمة Linux وWindows.

- **Clang**: مترجم حديث يدعم C++.

- **MSVC**: مترجم مايكروسوفت المدمج في Visual Studio.


## 3. كتابة أول برنامج C++


إليك مثال بسيط على برنامج C++ يقوم بطباعة "Hello, World!" على الشاشة:


```cpp

#include <iostream> // تضمين مكتبة الإدخال والإخراج


int main() {

    std::cout << "Hello, World!" << std::endl; // طباعة النص

    return 0; // إرجاع القيمة 0

}

```


### شرح البرنامج:

- `#include <iostream>`: تستخدم لتضمين مكتبة الإدخال والإخراج.

- `int main()`: تعريف الدالة الرئيسية.

- `std::cout`: تستخدم لطباعة النصوص على الشاشة.

- `return 0;`: تشير إلى نجاح البرنامج.


## 4. المفاهيم الأساسية في C++


### أ. المتغيرات وأنواع البيانات

تُستخدم المتغيرات لتخزين القيم. الأنواع الشائعة تشمل:

- `int`: للأعداد الصحيحة.

- `float`: للأعداد العشرية.

- `char`: لتخزين حرف واحد.

- `string`: لتخزين سلسلة من الأحرف.


### ب. التحكم في التدفق

يمكن استخدام الجمل الشرطية والحلقات للتحكم في تدفق البرنامج:


#### الجمل الشرطية

```cpp

if (condition) {

    // كود إذا كانت الشرط صحيح

} else {

    // كود إذا كانت الشرط خاطئ

}

```


#### الحلقات

```cpp

for (int i = 0; i < 10; i++) {

    // كود يتكرر 10 مرات

}


while (condition) {

    // كود يتكرر طالما الشرط صحيح

}

```


### ج. الدوال

تُستخدم الدوال لتجميع الكود وإعادة استخدامه:


```cpp

int add(int a, int b) {

    return a + b; // إرجاع مجموع العددين

}

```


## 5. البرمجة الكائنية (OOP)


C++ تدعم البرمجة الكائنية، وهي طريقة تنظيم الكود حول "الكائنات". المفاهيم الأساسية تشمل:


### أ. الفئات (Classes)

تُستخدم لتعريف الكائنات:


```cpp

class Car {

public:

    void drive() {

        std::cout << "Driving the car!" << std::endl;

    }

};

```


### ب. الكائنات (Objects)

يمكن إنشاء كائنات من الفئات:


```cpp

Car myCar;

myCar.drive(); // استدعاء الدالة drive

```


### ج. الوراثة

يمكن لفئة أن ترث الخصائص والسلوكيات من فئة أخرى:


```cpp

class Vehicle {

public:

    void move() {

        std::cout << "Moving!" << std::endl;

    }

};


class Bike : public Vehicle {

    // Bike يرث من Vehicle

};

```


## 6. إدارة الذاكرة


C++ يمنحك السيطرة على إدارة الذاكرة. يجب عليك تخصيص الذاكرة باستخدام `new` وتحريرها باستخدام `delete`:


```cpp

int* ptr = new int; // تخصيص ذاكرة

*ptr = 5; // تعيين قيمة

delete ptr; // تحرير الذاكرة

```


## 7. أدوات التعلم والموارد


- **كتب**: "C++ Primer" و"Effective C++".

- **دورات عبر الإنترنت**: Coursera وUdemy وedX.

- **منتديات**: Stack Overflow وReddit.


## الخاتمة


C++ هي لغة برمجة قوية ومرنة، وتُستخدم على نطاق واسع في تطوير البرمجيات. من خلال تعلم الأساسيات والمفاهيم المتقدمة، يمكنك بدء رحلتك في عالم البرمجة. استمر في ممارسة الكتابة واستكشاف مشاريع جديدة لتطوير مهاراتك.

إرسال تعليق

أحدث أقدم

نموذج الاتصال