المتغيرات ثابتة في C #
-
20-08-2019 - |
سؤال
في C #، هل هناك طريقة لوضع متغير ثابت في طريقة مثل VB.Net؟
Static myCollection As Collection
المحلول
لماذا لا C # دعم أسلوب ثابت المتغيرات؟
س: في C ++، فمن الممكن لكتابة أسلوب ثابت متغير، ويكون ل متغير التي يمكن الوصول إليها فقط من داخل الأسلوب. C # لا توفر هذه الميزة. لماذا؟
وA: هناك سببان C # لا هذه الميزة.
أولا، فمن الممكن الحصول على ما يقرب من نفس التأثير من خلال وجود على مستوى الطبقة ساكنة، وإضافة طريقة سوف احصائيات يتطلب زيادة التعقيد.
وثانيا، احصائيات مستوى الطريقة هي سيئة السمعة إلى حد ما عن التسبب مشاكل عند استدعاء التعليمات البرمجية مرارا وتكرارا أو من المواضيع متعددة، ومنذ التعاريف في طرق، فمن الصعب العثور على التعاريف.
اقتباس فقرة>نصائح أخرى
لا ليس هناك ولكن كيف يتم هذا يختلف ثم وجود متغير ثابت على مستوى الصف؟
في الواقع اذا نظرتم في كيفية المشتركة وتنفيذها، وهو مترجم خدعة أن يخلق حقل ثابت على الطبقة.
وأقرب شيء إلى VB.NET في Static
و> هو لإنشاء حقل في نوع الحالي. بخلاف ذلك C # ليس لديه ما يعادلها.
لا، وCLR لا يعتمد هذا، وVB.NET المنتجعات على مترجم الحيل لتسمح بذلك. هتاف اشمئزاز.
وأنا متأكد من C # يعادل هو const
: بالتالي:
public const Collection myCollection = new Collection();
وأنا لست على دراية جدا مع VB.NET، لذلك يمكن أن يكون قاعدة خارج، ولكن هذا سوف يسمح لك تعيين متغير التي لا يمكن تغييرها.