English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمية C++ الأساسية

تحكم في العملية في C++

وظائف C++

مجموعات وروابط C++

هياكل بيانات C++

كائنات C++ ووظائفها

المؤشرات في C++

الوراثة في C++

دليل STL في C++

دليل مرجع C++

الأجسام والفئات في C++

في هذا المقال، ستتعلم استخدام الكائنات والكائنات في برمجة C++.

C++ لغة برمجة متعددة الأساليب. هذا يعني أنها تدعم أنماط برمجة مختلفة.

من الطرق الشائعة لحل مشاكل البرمجة إنشاء الكائن، وهو ما يُعرف بنمط البرمجة الموجه بالكائن.

يدعم C++ نمط البرمجة الموجه بالكائن (OO)، والذي يسمح لك بتجزئة المشاكل المعقدة إلى مجموعات أصغر.

الكائن هو مجموعة بيانات ومجموعة من الوظائف التي تعمل على هذه البيانات.

كائنات C++

قبل إنشاء كائن في C++، يجب تعريف الكائن.

الكائن هو رسم خطة الكائن.

يمكننا اعتبار الكائن رسمًا لخطة البيت (نموذج). يحتوي على جميع التفاصيل المتعلقة بالأرضيات، الأبواب، النوافذ، إلخ. بناءً على هذه التوصيفات، نقوم ببناء البيوت. والبيت هو الكائن.

بما أن يمكن إنشاء العديد من البيوت باستخدام نفس الوصف، يمكننا إنشاء العديد من الكائنات بناءً على الكائن.

كيف يمكن تعريف كائن في C++؟

في C++، يتم تعريف كائن باستخدام كلمة المفتاح class وإسم الكائن.

يتم تعريف جسم الكائن داخل الكواشف، ويتم إنهاءه بنهاية الكواشفنقطة السطرانتهاء.

class className
   {
   // بعض البيانات
   // بعض الوظائف
   };

مثال: كائنات في C++

class Test
{
    private:
        int data1;
        float data2;  
    public:  
        void function1()
        {    data1 = 2;    } 
        float function2()
        { 
            data2 = 3.5;
            return data2;
        }
   };

في هذا السياق، نحدد كائنًا يُدعى Test.

هذا الكائن يحتوي على عضوين بيانات: data1 و data2 ووظائف عضوية: function1() و function2().

كلمات المفتاح: private و public

في المثال أعلاه، قد لاحظت كلمتي المفتاح: private و public.

كلمة المفتاح private تجعل البيانات والوظائف خاصة. يمكن الوصول إلى البيانات والوظائف الخاصة فقط من داخل نفس الكائن.

كلمة المفتاح public تجعل البيانات والوظائف عامة. يمكن الوصول إلى البيانات والوظائف من خارج الكائن.

في هذا السياق، data1 و data2 هي أعضاء خاصة، بينما function1() و function2() هي أعضاء عامة.

إذا حاولت الوصول إلى البيانات الخاصة من خارج الكائن، فإن المضيف سيقوم بإطلاق خطأ.في OOPهذه الخاصية تسمى إخفاء البيانات.

كائنات C++

عند تعريف الكائن، يتم تعريف شكل الكائن فقط؛ لا يتم تخصيص ذاكرة أو مساحة تخزين.

للإستفادة من البيانات والوظائف المحددة في الكائن، يجب إنشاء كائن.

نحو تعريف الكائن في C++

className objectVariableName;

يمكنك إنشاء كائن Test باستخدام الطريقة التالية (في المثال أعلاه تم تعريفه):

class Test
{
    private:
        int data1;
        float data2;  
    public:  
        void function1()
        {    data1 = 2;    } 
        float function2()
        { 
            data2 = 3.5;
            return data2;
        }
   };
int main()
{
    Test o1, o2;
}

في هذا السياق، تم إنشاء جسمين من فئة Test هو o1 وo2.

في فئة Test أعلاه، data1 وdata2 هي الع quart الخاصة، وfunction1() وfunction2() هي الدوال الخاصة.

كيفية الوصول إلى الع quart الخاصة بالأجسام والفئات في C++؟

يمكنك استخدامها للوصول إلى الع quart الخاصة بالأجسام والفئات. (.) عميل. على سبيل المثال،

o2.function1();

هذا سيقوم بتقديم دالة function1() إلى جسم o2 داخل فئة Test.

بالنفس الطريقة، يمكنك الوصول إلى الع quart الخاصين عبر الطريقة التالية:

o1.data2 = 5.5;

من المهم ملاحظة أن يمكن الوصول إلى الع quart الخاصة فقط من داخل الفئة.

لذلك، يمكنك استخدام أي دالة أو فئة من مثال o2.function1(); ولكن يجب دائمًا أن يكون كود o1.data2 = 5.5; داخل فئة Test.

مثال: الأجسام والفئات في برمجة C++

// هذا البرنامج يوضح كيفية عمل الأجسام والفئات في البرمجة بلغة C++
#include <iostream>
using namespace std;
class Test
{
    private:
        int data1;
        float data2;
    public:
       
       void insertIntegerData(int d)
       {
          data1 = d;
          cout << "رقم: " << data1;
        }
       float insertFloatData()
       {
           cout << "\nإدخال البيانات: ";
           cin >> data2;
           return data2;
        }
};
 int main()
 {
      Test o1, o2;
      float secondDataOfObject2;
      o1.insertIntegerData(12);
      secondDataOfObject2 = o2.insertFloatData();
      cout << "أدخلت " << secondDataOfObject2;
      return 0;
 }

نتيجة الإخراج

رقم: 12
إدخال البيانات: 23.3
أدخلت 23.3

في هذا البرنامج، تم تعريف عضوين من فئة Test هو data1 وdata2، بالإضافة إلى دوال member insertIntegerData() وinsertFloatData().

تم إعلان جسمين من نفس الفئة o1 وo2.

استخدم الطريقة التالية لتقديم دالة insertIntegerData() إلى جسم o1:

o1.insertIntegerData(12);

هذا سيعين قيمة data1 الخاصة بجسم o1 على 12.

ثم، أُدعى وظيفة insertFloatData() الخاصة بالجسم o2، واستخدمت الطريقة التالية لتخزين قيمة العودة من هذه الوظيفة في المتغير secondDataOfObject2:

secondDataOfObject2 = o2.insertFloatData();

في هذا البرنامج، لم يتم استخدام data2 الخاصة بو1 وdata1 الخاصة بو2، ويتم استخدامهما كقيم ضارة.

من المهم أن تقوم بمراجعة المواضيع التالية للحصول على معلومات إضافية حول الأجسام والفئات: