我想知道在 C# 中,如何正确地实现与这段 C++ 代码相同的功能,这段代码中保存了一个指向类对象或结构体的指针(引用)。由于 C# 处理结构体/类对象的方式不同,因此我将在此示例中使用结构体。
struct sMyStruct { .. blah .. };
class MyClass {
sMyStruct *RefToStruct=nullptr;
MyClass(sMyStruct *reftostruct)
{
RefToStruct=reftostruct;
}
};
int main(void)
{
sMyStruct *mystruct = new sMyStruct( .. blah .. );
MyClass *c=new MyClass(mystruct);
delete c;
delete mystruct;
}
实际上,这个结构体是在其他地方创建的(作为框架的一部分,在我的控制范围之外,并且会动态更新),并且每个结构体的行为都不同。MyClass 只需要使用正确的那个(程序员的选择),这就是为什么我希望将对象的引用保留在类本身中,而不必将其传递给为该类创建的每个函数/方法。