亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么C#不提供C ++樣式的“ friend”關鍵字?

為什么C#不提供C ++樣式的“ friend”關鍵字?

慕尼黑5688855 2019-10-08 10:45:35
在C ++朋友關鍵字允許class A指定class B作為其朋友。這允許Class B訪問的private/ protected成員class A。我從來沒有讀過任何有關為什么C#(和VB.NET)不包含此內容的信息。這個早期的StackOverflow問題的大多數答案似乎都在說它是C ++的有用組成部分,并且有充分的理由使用它。以我的經驗,我必須同意。在我看來,另一個問題實際上是在問如何friend在C#應用程序中執行類似的操作。盡管答案通常圍繞嵌套類,但似乎并不像使用friend關鍵字那樣優雅。原始的《設計模式》一書在整個示例中都定期使用它。因此,總而言之,為什么friendC#缺少它?在C#中模擬它的“最佳實踐”方法是什么?(順便說一句,internal關鍵字不是同一回事,它允許整個程序集中的所有類訪問internal成員,而friend允許您為某個類提供對另一個類的完全訪問權限)
查看完整描述

4 回答

?
陪伴而非守候

TA貢獻1757條經驗 獲得超8個贊

通過使用C#中的接口,您應該能夠完成與“朋友”在C ++中相同的工作。它要求您明確定義在兩個類之間傳遞的成員,這是額外的工作,但也可能使代碼更易于理解。

如果有人舉了一個合理使用“朋友”的示例,而該示例不能使用界面來模擬,請分享一下!我想更好地了解C ++和C#之間的區別。


查看完整回答
反對 回復 2019-10-08
  • 4 回答
  • 0 關注
  • 1438 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號