بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله .
في الحقيقة أود ألا تخافوا من العنوان لأنه مزحة ;) .
ولكن لم أستطع تفسير شيء غريب في ++C ولكنه موجود في كل الكومبايلرات فأرجو التوضيح من الأخوة الأعزاء ( الله يساعدكم ما يجي مني إلا الأسئلة المعقدة ) :
[Code2]
#include
class Test
{
public:
Test()
{
cout << "Default.n";
}
Test(int A)
{
cout << "The other.n";
}
void DoSomething()
{
cout << "Some thing.n";
}
};
void main()
{
Test test1;
Test test2(3);
Test test3();
test1.DoSomething (); //OK
test2.DoSomething (); //OK
// test3.DoSomething (); //Error
return;
}
[/Code2]
عندما كتبت ()Test test3 انتظرت رسالة خطأ ولكن تفاجأت أن الشفرة صحيحة ، ولكن كما هو واضح من الشفرة لم يعتبره VC متغيرا من نوع الفئة ، كما أن OutPut للشفرة أوضح أن الباني استدعي مع المتغير test1 و test2 فقط ، فهل من الممكن من الأخوة الأعزاء التوضيح وشكرا لكم .
أخوكم ،