class Test
{
public:
Test() : Value(0) { }
Test(int v) : Value(v) { }
int Value;
};
int main()
{
Test myTest(5);
Test myDefaultTest();
myDefaultTest.Value = myTest.Value;
}
error C2228: left of '.Value' must have class/struct/union
Test myDefaultTest();
Test myTest ; // تلقائيا constructor يتم ستدعاء
Test myTest2(5) ; // appelle du constructeur surcharger
// Test(int v) : Value(v) { }
في 19 شباط 2009 07:55 م، غمغم tombston باستغراب قائلاً:
السلام عليكمTest myDefaultTest();
void Foo(const Test& t);
Test *p = new Test(); // هذا السطر صحيح هنا
Test *p = new Test; // وهذا صحيح أيضاً
Foo(Test()); // القوسان ضروريان هنا
class Item
{
const int MaxElements = 100;
int[] InternalArray = new int[MaxElements];
int this[int index]
{
get { return InternalArray[index]; }
set { InternalArray[index] = value; }
}
}
error CS0542: 'Item': member names cannot be the same as their enclosing type
void Foo(const Test& t);
Test *p = new Test(); // هذا السطر صحيح هنا
Test *p = new Test; // وهذا صحيح أيضاً
Foo(Test()); // القوسان ضروريان هنا
Foo(p);
int this[int index]
this
في 20 شباط 2009 05:22 م، قال محمد انس بهدوء وتؤدة:
يمكن ايضا كتابة السطر الاخير دون اقواس على ما اعتقدFoo(p);
Foo(Test);
في 20 شباط 2009 05:22 م، عقد محمد انس حاجبيه بتفكير وقال:
اظن ان this
من الكلمات المحجوزة للسي شارب و هو مؤشر الكائن الحالي Item myItem = new Item();
myItem[5] = 100;
int i = myItem[10];
وفي 20 شباط 2009 06:24 م، قال انس متحمساً:
حسنا لقد قمت بترجمة الكود في مترجم السي بلس بلس .... فقام هذا الاخير بشتمي بعدة شتائم ☺وفي 20 شباط 2009 06:24 م، ظهر شبح ابتسامة على وجه انس وهو يقول:
اتمنى ان لا اكون قد تفوهت بحماقة تجعل احدكم يشتمني كما فعل المترجموفي 20 فبراير 2009 06:46 م، ظهر شبح ابتسامة على وجه عبد اللطيف حاجي علي وهو يقول:
نعم بالفعل. لذلك يفضل الكثيرون لغة C#أما في 20 فبراير 2009 06:46 م، فقد تنهد عبد اللطيف حاجي علي بارتياح وهو يرد:
أبداً أخي محمد (يبدو أن اسمك أصبح أنس الآن )في 20 فبراير 2009 06:46 م، غمغم عبد اللطيف حاجي علي باستغراب قائلاً:
أحياناً نصيب وغالباً ما نخطئ. لكن هذا كله هو جزء مهم من عملية التعليم الذي نصيبو إليه int this[int index]
{
get { return InternalArray[index]; }
set { InternalArray[index] = value; }
}
const int MaxElements = 100;
انشاء متغير بقيمة ثابة . int[] InternalArray = new int[MaxElements];
انشاء جدول بنفس حجم المتغير دو القيمة الثابتة اي 100 خانة من نوع INT int this[int index]
get { return InternalArray[index]; }
set { InternalArray[index] = value; }
كل من الكائنات المشار لها ب THIS لديها الدالتين GET .. SET ...