الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

error C4430

بدأه 3mr في 31 مايو 2012 · 4 رد · 812 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ما معنى هذا الخطأ ؟

بحثت كثير ولم اجد حل

الكلاس الذى به الخطا


class QuestInfo
{
public:
WORD byNumber;
BYTE byFlag;
BYTE byClear;

QuestInfo()
: byNumber( 0)
, byFlag( 0)
, byClear( 0) {}
// الخطأ فى هذا السطر بلتحديد
operator == ( const QuestInfo& r){ return r.byNumber == byNumber;}
};


من طلب العلى سهر اليالى

#2

اى داله لابد من تحديد قيمه معاده منها و اعادة تعريف المعاملات المنطقيه تحتاج ان تكون القيمه المعاده من نوع bool و لكن فى حالتك فأنت لم تحدد اصلا نوع القيمه القيمه المعاده و هذا هو الخطأ.

و الله ولي التوفيق

1

مدونتي: C++ Tips and Tricks

#3
bool operator == ( const QuestInfo& r)
{ bool x;
if(r.byNumber == byNumber) x = true;
return x;
}
#4

المشكله ذهبت وللعلم هذا الكود كان يعمل بدون مشاكل فى 2003

شكرا على الحل

من طلب العلى سهر اليالى

#5
3mr كتب:

المشكله ذهبت وللعلم هذا الكود كان يعمل بدون مشاكل فى 2003

شكرا على الحل

قبل 2005 كان بعتبر نوع القيمة المعادة هو int ان لم تقم بتحديد، لكن تغير هذا في 2005 حيث يجب ان تحدد نوع القيمة المعادة

msdn.microsoft.com/en-us/library/ms173696(v=vs.80).aspx

تم تعديل هذه المشاركة بواسطة Ahmed Saidi في 7 يونيو 2012 في 22:28

مواضيع مشابهة