محمد حكيم
- المغرب
- دالة تجمع عددين و تعيد مؤشر يشير إلى جمعهما
انا اخذت الكود الذي كتبته على اساس pseudocode . اما في الحقيقة فذلك الكود لن يعمل لانه تم استعمال المؤشر قبل حجز العنوان. عملية التحرير لا تحذف المؤشر كليا بل تجعله NULL Pointer . جرب الكود التالي للتوضيح #include <iostream> using namespace std; int main() { i…
- سؤال \\ الفرق بين operator and operation
بالنسبة ل parameter فمثلا void print( char* s){...} ف s تسمى برامتر للدالة print اذا استعملنا الدالة بهذا الشكل print("abcd"); ف "abcd" هو argument للدالة print.
- دالة تجمع عددين و تعيد مؤشر يشير إلى جمعهما
هناك قاعدة تقول : Never return a reference or a pointer to a local object ! يعني لا تقم بارجاع مرجع او مؤشر على كائن محلي في دالة معينة. int* S(int a,int b) { int* s; *s = a+b; return s; } في هذه الحالة بعد الخروج من الدالة سيتم تحرير المؤشر , عملية التحرير لا…
- التخزين المباشر
اذا كنت تريد استعمال ذلك مع الدوال فعليك بال templates. + المؤشر من نوع void* يمكنه ان يؤشر على اي نوع .. ليس لدي فكرة واضحة عن امكانية استعمال هذا المؤشر لحل مشكلتك.
- برنامج ثلاثي الأبعاد
يمكن عمل ذلك بأي لغة برمجة لأن ذلك يتعلق بمكتبة ال 3D التي ستعمل بها. ابحث عن دروس openGL ستجد ما تريد.
- كيفية الإدلال على أن الداله لم تنجح
يمكن ارجاع قيمة true في حالة النجاح و False في حالة فشل الدالة. لكن من الافضل لو تم الاعتماد على ال exeptions لانها تتوفر على مزايا اخرى.
- كيف اكتب بالعربي على الكونسول ؟؟
SetCurrentConsoleFontEx موجودة في الانظمة windows vista فما فوق فقط.
- ماهية ال Copy Constructor
نعم كتبه مميزة. لكن من وجهة نظري بالنسبة للمبتدئين انصح بكتاب C++ Primer فعلا كتاب رائع جدا يشرح تقريبا معظم الامور في C++ . ثم كتاب the C++ programming language لمؤسس لغة C++ . و كتب اخرى مثل the Art of C++ . لكن افضل شيئ للتعلم هو التطبيق .. لن تتعلم C++ الا…
- ماهية ال Copy Constructor
السلام عليكم. درس مفيد أخي .
- مشكلة مع الكلاس
السلام عليكم. يمكنك وضع القيم سواء بواسطة دالة البناء او دالة اخرى. #include <iostream> using namespace std; /*Prototype*/ class myClass { public: myClass(); //ctor void init(); void print(); virtual ~myClass();//dtor private: int *array; unsigned int size; };…
- إضافة أو حذف عنصر من عناصر المصفوفة
ليس هنا بل هنا في كود الدالة نفسها int* delete_form_arr(int* arr, int length, int delete_index) { int i, j, *ret; if (delete_index > length-1) return NULL; ret = malloc((length-2)*sizeof(int)); for (i=0, j=0; i<length; i++) { if (i == delete_index) continue; r…
- إضافة أو حذف عنصر من عناصر المصفوفة
لم انتبه لهذا الجزء .. :) يجب استعمال explicit cast من void* ل *int في هذه الحالة.
- إضافة أو حذف عنصر من عناصر المصفوفة
اخي باستعمال الحجز الديناميكي بواسطة malloc يجب عليك تحرير تلك القطعة المحجوزة من الذاكرة بعد انتهائك منها باستعمال free.
- استفسار حول توابع الكائنين cout و cin
راجع الdocumentation الخاصة ب iostream وستجد كل الاجوبة عن تساؤلاتك مع الامثلة. http://www.cplusplus.com/reference/iostream/ios/
- ما هى فائدة المؤشرات
المؤشرات هي متغيرلت تقوم بتحزين عناوين متغيرات اخرى في الذاكرة و لها علاقة مع : - المصفوفات - الحجز الديناميكي للذاكرة -الدوال . تستعمل المؤشرات بكثرة في لغة سي بينما في سي ++ فقد تم اضافة "المراجع references" وهي نسخة مخففة من المؤشرات يمكن استعمالها دون اعرا…
- هل من طريقة لبناء تطبيقات ويب بلغة C++ ؟
لن تجد لغة تمكنك من عمل تطبيقات الويب + تطبيقات سطح المكتب بشكل متكافئ.. يعني اللغة القوية في تطبيقات سطح المكتب تكون ضعيفة في تطبيقات الويب والعكس صحيح. في نظري استعمل سي++ للتطبيقات المكتبية و PHP لتطبيقات الويب لان البنية النحوية لكلتا اللغتين متشابهة.
- لغز محير في لغة السي ...!
ال undifined behavior يدل على ان عملية معينة تعطي نتيجة عشوائية لا يمكننا الحكم عليها هل هي صحيحة ام لا لأن طريقة اشتغالها و سلوكها غير معروف. يمكن تشبيهها بالشكل الغير المحدد في الرياضيات مثلا القسمة °°+/°°+.(°° = رمز اللانهاية).
- إضافة أو حذف عنصر من عناصر المصفوفة
أنا أفضل استعمال الحاوية vector في حالة اردنا حذف أو اضافة بعض العناصر. #include <iostream> #include <vector> using namespace std; void insertItem(vector<int> &v,int value); void removeItem(vector<int> &v,int value); void print(vector<int> &v); int main() { in…
- إضافة أو حذف عنصر من عناصر المصفوفة
ألا تظن ان هناك بعض ال memory leaks في هذا الكود؟ وخصوصا المتغير ret.