• 0
Sultan_Althibity

سؤال في التحميل الزائد.. معامل غريب لا أعرفه

سؤال

جربت هذا الكـود في السابق ... وكنت أود طرحـه في سؤال بعـد أن بحثت في كل مكان ولم أجد له إجابة ..
باختصار ما هـو المعامل الذي يحمل نفس اسم الكلاس ... أنظر إلى هذا المثال
 

class CLASS{public:operator CLASS ();};

ما هي وظيفة هذا المعامل الغريب .. ماذا يفعل .. أو ماهي الوظيفة الافتراضية له . وكيف استخدمه .. وما هي القيمـة التي يعيدها

تم تعديل بواسطه مصطفى 36a2
add some tags
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

1 إجابات على هذا السؤال .

  • 0

أول مرة أجد مثل هذا المعامل و لكن أعتقد أنك تقصد المعامل الذي يسمى الexplicit cast operator و هو الذي يستخدم في عملية الType Conversion بين فئتين مختلفتين و يُكتب بطريقة مشابهة

class A
{
A()
{
}

}

class B
{
B()
{
}
operator A() const
{
//here put the conversion code
}
}

و بهذه الطريقة يمكنك عمل code بهذه الطريقة

B b;
A a = (A) b;

و لكن اذا طبقنا هذا المبدأ على ما ذكرته في مشاركتك نجد كأنها محاولة لعمل Conversion من و الى نفس النوع :s

}

تم تعديل بواسطه bashmohandes
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .