Avatar ·

كم عدد مستويات التداخل للمؤشرات التي يمكن أن تكون في C++؟

مرحباً بالجميع. أكتب بلغة C++ منذ حوالي عام، ويقلقني سؤال نظري واحد. أعلم أنه يمكن إنشاء مؤشرات إلى مؤشرات، على سبيل المثال `int** ptr`، وحتى مؤشرات ثلاثية `int*** ptr`. لكن إلى أي مدى يمكنني الذهاب؟ هل هناك أي قيود في معيار اللغة، أم أن هذا يعتمد على المترجم/المنصة؟ على سبيل المثال، يمكنني كتابة: ```cpp int a = 5; int* p1 = &a; int** p2 = &p1; int*** p3 = &p2; int**** p4 = &p3; // وهكذا... ``` لكن ماذا لو حاولت إنشاء مؤشر بمستويات تداخل 100؟ هل سيتم تجميعه؟ وإذا كان الأمر كذلك، كيف سيعمل في وقت التشغيل؟ يبدو لي أنه عملياً لا أحد يستخدم أكثر من 2-3 مستويات، لكني أريد فهم الحدود الرسمية. أيضاً، هل هناك فرق بين C و C++ في هذا الشأن؟ سمعت أنه في C هناك قيود...