Por que o C # não fornece a palavra-chave 'friend' no estilo C ++? [fechadas]

oPalavra-chave do amigo C ++ permite umaclass A para designarclass B como amigo. Isso permiteClass B para acessar oprivate/protected membros declass A.

Eu nunca li nada sobre por que isso foi deixado de fora do C # (e do VB.NET). A maioria das respostas para issopergunta anterior sobre StackOverflow parece estar dizendo que é uma parte útil do C ++ e há boas razões para usá-lo. Na minha experiência, eu teria que concordar.

OutroPergunta, questão parece-me estar realmente perguntando como fazer algo semelhante afriend em um aplicativo C #. Embora as respostas geralmente giram em torno de classes aninhadas, não parece tão elegante quanto usar o métodofriend palavra-chave

O originalLivro de padrões de design usa-o regularmente em todos os seus exemplos.

Então, em resumo, por que éfriend ausente do C # e qual é a maneira (ou maneiras) de "melhor prática" de simulá-lo no C #?

(A propósito, ointernal palavra-chave énão a mesma coisa, permitetudo classes dentro de toda a montagem para acessarinternal membros, enquantofriend permite que você dê uma certa aulaacesso completo paraexatamente um outra classe)

questionAnswers(23)

yourAnswerToTheQuestion