المشكل اهر من عنوانه
اريد شرح حول كلمة const وما فائدتها
وشكرا
المشكل اهر من عنوانه
اريد شرح حول كلمة const وما فائدتها
وشكرا
كما ان هنالك ثوابت .. هنالك متغيرات ..
المتغير فائدته تكوين مساحة في الذاكرة من دون تثبيت محتواها .. اما المتغير فهو تكوين مساحة في الذاكرة ولكن قيمتها ستكون ثابتة طول عمل البرنامج .. على سبيل المثال قانون مساحة الدائرة يحتوي نسبة ثابته لا يمكن تغييرها ..لذلك يمكنك تثبيت هذه القيمة في البرنامج .. واينما استعملتها ستستخدم اسم الثابت الذي اسميتها به ولا تحتاج لان تكتب قيمة الثابت ..
كما في هذا المثال ..
#.hinclude <iostream>
#.hinclude <iostream>
int main ()
{
double r=5.0;
double circle;
circle = 2 * PI * r;
cout << circle;
cout << NEWLINE;
return 0;
}لاحظ انه تم تعريف ثابت اسمه PI والذي يحتوي على قيمة النسبه الثابتة .. والتي لن تتغير طوال البرنامج .. واينما اردت استخدام قيمة النسبة الثابتة فقط اكتب PI ..
ملاحظتين ..
1- البعض يستخدم #define او مانسميه بالماكرو لانشاء ثابت .. النتيجة الظاهرية واحدة لكن داخليا الامور تختلف بشكل واضح ولكن هذا موضوع متقدم نوعا ما لانك ستحتاج الى دراسة Prepossesser ..
#define PI 3.14
2- عند اطلاعك المستقبلي على كودات مفتوحة المصدر .. ستجد استخدام الثابت اكبر من المثال المذكور اعلاه ..غالبا ما يكون موجها مع دوال API او مع دوال ضخمة البناء .. اما في الدوال البسيطة فان الاستخدام الشائع #define ولكن لعدد بسيط من الثوابت ..
اعرف انه كان لمحة عامة عن الثوابت ولكن هذه مجرد فائدة لك وربما الاخوة يضيفون على كلامي ..
تحياتي العطرة ..
يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..
ممكن ان يقول const مثل pointure في سي اي التابع (int *p) ؟؟؟
اقتباساريد شرح حول كلمة const وما فائدتها
الكلمه const لها استخدامات عديده داخل اللغه و هي تعتمد على مكان استخدام الكلمه const. يوجد فصل كامل فى كتاب Thinking in C++ 2nd Edition يتحدث عن الثوابت (الفصل الثامن) أرجع إليه لمزيد من التفاصيل.
اقتباسممكن ان يقول const مثل pointure في سي اي التابع (int *p) ؟؟؟
لا يمكنك ذلك، الموشرات مختلفه عن الثوابت، راجع موضوع فكر معي فى معني هذا الثابت للأخطاء الشائعه فى تعريف الثوابت.
و الله ولي التوفيق
مدونتي: C++ Tips and Tricks