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

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

C++ تحكم بال流程

الوظائف المخصصة في C++

C++ مصفوفات وخطوط

C++ بنية البيانات

C++ كلاس وأوبجكت

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

الاستنساخ في C++

تعليميات STL في C++

دليل مرجع C++

C++ نقل الأوبجكتات وإرجاعها في الدوال

في هذا المقال، ستتعلم كيفية نقل الأوبجكتات إلى الدوال في لغة البرمجة C++ وكيفية استرداد الأوبجكتات من الدوال.

في برمجة C++،يمكن نقل الأهداف إلى الدالة بنفس الطريقة التي يتم بها نقل الهياكل.

كيفية نقل الأهداف إلى الدالة؟

مثال 1: نقل الأهداف إلى الدالة

يضيف برنامج C++ مجموع المراتب (الرموز) من خلال نقل الأهداف إلى الدالة

#include <iostream>
using namespace std;
class Complex
{
    private:
       int real;
       int imag;
    public:
       Complex(): real(0), imag(0) { }
       void readData()
        {
           cout << "输入实数和虚数:" << endl;
           cin >> real >> imag;
        {}
        void addComplexNumbers(Complex comp1, Complex comp2)
        {
           //real يمثل البيانات الفعلية لرمز c3، لأنه يمكن التعبير عن الدالة باستخدام كود c3.add(c1،c2); يمكن تنفيذ الدالة;
            real = comp1.real + comp2.real;
             //imag يمثل بيانات imag لرمز c3، لأنه يمكن التعبير عن الدالة باستخدام كود c3.add(c1،c2); يمكن تنفيذ الدالة
            imag = comp1.imag + comp2.imag;
        {}
        void displaySum()
        {
            cout << "Sum = " << real << "+" << imag << "i";
        {}
};
int main()
{
    Complex c1, c2, c3;
    c1.readData();
    c2.readData();
    c3.addComplexNumbers(c1, c2);
    c3.displaySum();
    return 0;
{}

نتيجة الخروج

ادخل العدد الحقيقي والمعقد:
2
4
ادخل العدد الحقيقي والمعقد:
-3
4
Sum = -1 + 8i

كيفية نقل الأهداف من الدالة؟

في برمجة C++،  يمكن نقل الأهداف من الدالة بنفس الطريقة التي يتم بها نقل الهياكل.

مثال 2: نقل و�回علة الأهداف من الدالة

في هذا البرنامج، سيتم إرجاع مجموع المراتب (الرمز) إلى دالة main() وعرضه.

#include <iostream>
using namespace std;
class Complex
{
    private:
       int real;
       int imag;
    public:
       Complex(): real(0), imag(0) { }
       void readData()
        {
           cout << "输入实数和虚数:" << endl;
           cin >> real >> imag;
        {}
        Complex addComplexNumbers(Complex comp2)
        {
            Complex temp;
            //real表示对象c3的实际数据,因为使用代码c3.add(c1,c2);可以调用此函数;
            temp.real = real + comp2.real;
            //imag代表对象c3的imag数据,因为使用代码c3.add(c1,c2);可以调用此函数
            temp.imag = imag + comp2.imag;
            return temp;
        {}
        void displayData()
        {
            cout << "Sum = " << real << "+" << imag << "i";
        {}
};
int main()
{
    Complex c1, c2, c3;
    c1.readData();
    c2.readData();
    c3 = c1.addComplexNumbers(c2);
    c3.displayData();
    
    return 0;
{}