我的类型如下:
public class MyClass
{
public ContextType Context;
public int Value;
}
Context用于跟踪类型所在的上下文。问题在于执行赋值时:
MyClass myClassA = ..
MyClass myClassB = ..
myClassA = myClassB;
当我只希望复制值并保持上下文保持不变时,myClassA引用及其上下文会发生变化。
我尝试过使用隐式运算符,但它不允许转换为基类型或从基类型转换。
我想避免强迫用户使用某种自定义分配方法,但如果我真的不得不想要阻止常规分配(避免什么是常见的错误)。我希望我的API尽可能方便用户使用。
有没有办法完成这种行为?有关跟踪类型上下文的其他方法的任何建议吗?