【发布时间】:2024-01-07 21:36:01
【问题描述】:
假设您有一个如下定义的类。
public class SomeClass
{
public Manager m { get; protected set; }
public SpecialData data { get; protected set; }
//More methods and member code here...
}
我需要我的经理类能够以某种方式更改 SpecialData 成员的集合引用。我可以使用 C++ 中的双指针或友元类来做到这一点,但遗憾的是,该选项在 C# 中不可用。如何保护 SpecialData 免受外部用户的设置,同时仍然允许 Manager 类控制设置?我可以使用 internal 关键字来做到这一点,但这似乎不太安全或干净......
非常感谢任何帮助。
【问题讨论】:
-
您能解释一下为什么您认为
internal不安全或不干净吗?您的意思是一般情况下如此,还是您认为它不适合您的特定设计?我想说这是一个完美的解决方案,但说实话我不确定你为什么要首先这样做。
标签: c# oop friend double-pointer