Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में C++ के friend कीवर्ड के समकक्ष

C# में friend का समकक्ष

C++ में friend फंक्शन/क्लास प्राइवेट और प्रोटेक्टेड मेंबर्स को एक्सेस कर सकता है। C# में इसका सीधा समकक्ष नहीं है।

सबसे निकटतम समाधान: नेस्टेड क्लास

इनर क्लास आउटर क्लास के प्राइवेट मेंबर्स को एक्सेस कर सकती है:

class Outer { 
    private int secret = 42; 
    
    class Inner { 
        void AccessOuter(Outer outer) { 
            Console.WriteLine(outer.secret); // एक्सेस संभव 
        } 
    } 
}

अन्य विकल्प:

  • internal कीवर्ड: असेंबली लेवल पर एक्सेस (अलग असेंबली से नहीं)
  • InternalsVisibleTo एट्रिब्यूट: विशिष्ट असेंबली को internal मेंबर्स का एक्सेस दें
  • इंटरफेस/पैटर्न: आवश्यक कार्यक्षमता को पब्लिक इंटरफेस के माध्यम से एक्सपोज़ करें
[assembly: InternalsVisibleTo("FriendAssembly")]

नोट: C# एनकैप्सुलेशन को सख्ती से लागू करता है। "friend" जैसी सुविधा जानबूझकर नहीं दी गई ताकि डिज़ाइन क्लीन रहे।

  1. - C# में SortedList क्लास क्या है?

    एक सॉर्टेड लिस्ट एक ऐरे और हैश टेबल का संयोजन है। इसमें आइटम्स की एक सूची होती है जिसे की या इंडेक्स का उपयोग करके एक्सेस किया जा सकता है। यदि आप इंडेक्स का उपयोग करके आइटम्स एक्सेस करते हैं, तो यह एक ArrayList है, और यदि आप की का उपयोग करके आइटम्स एक्सेस करते हैं, तो यह एक Hashtable है। आइटम्स का स

  1. - C# में ArrayList क्लास क्या है?

    C# में ArrayList क्लास ArrayList (System.Collections) एक नॉन-जेनेरिक डायनामिक एरे है जो किसी भी टाइप के ऑब्जेक्ट्स स्टोर कर सकता है। यह IList, ICollection, IEnumerable इम्प्लीमेंट करता है। नोट: आधुनिक C# में List<T> प्रीफर किया जाता है (टाइप सेफ्टी, प्रदर्शन)। ArrayList के मुख्य मेथड्स मेथड

  1. - C# में var कीवर्ड क्या करता है?

    var कीवर्ड var सपोर्ट के साथ वेरिएबल इनिशियलाइज़ करता है। बस वेरिएबल के लिए जो भी मान आप चाहते हैं असाइन करें, पूर्णांक, स्ट्रिंग, फ्लोट, आदि।उदाहरणusing System; namespace Demo { class Program { static void Main(string[] args) { var myInt = 5; var myString = Amit; Console.WriteLine(Rank: {0} \nName: