指向变量的 C# 指针
本文关键字:指针 变量 | 更新日期: 2023-09-27 18:34:40
C# question.
我有一个如下所示的继承层次结构:
BaseController
Object1Controller
Object2Controller
Object3Controller
Object3_1Controller
对象 1 2 和 3 的实例使用基本控制器中的值计算值,但对象 3_1 不计算。
这些对象可以附加其他对象,这些对象在一段时间内修改基值,然后将其还原为缓存值。(忽略这个OO噩梦的可怕含义:P(
我希望能够做的是这样的:
class modifier<T>
T* pointerToValue
void assignModifiable(T*)
这样,每个可修改的类都会创建一个修饰符,并让它指向它想要修改的变量。c++ 等效项如下所示:
template <class T> class ModifierInterface
{
T* modifiableVariable;
void setModifier( T &target )
{ modifiableVariable = target }
void changeModifiable( T val )
{ modifiableVariable = val }
}
这里的答案似乎是您的值的包装类:
class Modifiable<T>
{
public T Value { get; st; }
...
}
class Object1Controller : ...
{
public Modifiable<int> MyValue { get; private set; }
}
这还不完整,但这是我能对你的问题做出的。 Modifiable<int>
将具有int*
的大多数属性。