ahmed1990 نشر 25 سبتمبر 2015 أرسل تقرير نشر 25 سبتمبر 2015 ما هو الفرق بين التعريف definition و بين الإعلان declaration في لغة السي بلس بلس، فهل هما نفس الشيء ؟ أم يوجد فرق بينهما ؟ اقتباس
0 هشام رزق الله نشر 25 سبتمبر 2015 أرسل تقرير نشر 25 سبتمبر 2015 الإعلان declaration يُعرف الشيء ويصف نوعه سواء كان كائن أو دالة، فالإعلان هو ما يحتاجه المترجم (compiler) للإشارة لذلك الشيء المعلن، أي أنه ببساطة في الإعلان يتم حجز مكان لكائن أو دالة.أمثلة على الإعلانات:extern int ba; extern int g(int, int); double f(int, double); // extern can be omitted for function declarations class foo; // no extern allowed for type declarations أما التعريف definition فهو الكائن أو الدالة نفسها، أي أنه تعريف القيمة بالنسبة للمتغيرات والتعليمات البرمجية بالنسبة للدوال، وهذا ما يحتاجه الرابط (linker) لربط المراجع للكيانات.هذه هي التعريفات الموافقة للإعلانات المذكورة أعلاه:int ba; int g(int lhs, int rhs) {return lhs*rhs;} double f(int i, double d) {return i+d;} class foo {}; يذكر أنه يمكنك استخدام التعريف في مكان الإعلان. اقتباس
السؤال
ahmed1990
ما هو الفرق بين التعريف definition و بين الإعلان declaration في لغة السي بلس بلس، فهل هما نفس الشيء ؟ أم يوجد فرق بينهما ؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.