VB.NET:来自 C 的指针和地址运算符/将 C 转换为 VB.NET

VB.NET: Pointer and Address Operator from C / Convert C to VB.NET

double *dDevTabPressure;
static double sPT_Mach;
dDevTabPressure = &sPT_Mach;

我想将此 C 代码转换为 VB.NET 代码。不幸的是 VB.NET 中没有指针和地址运算符 你有一个简单的解决方案吗?

虽然 VB.NET 没有指针,但您可以使用对象来包装 Double。对象赋值 (=) 是通过引用而不是像简单数据类型那样通过值。

例如,此示例代码将 double 包装到一个匿名对象中。当值在一个对象中更新时,它会在另一个对象中更新,因为该对象指向内存中的相同位置。

    Dim devTabPressure = New With {.Value = Convert.ToDouble(2)}
    Dim devTabPressure2 = devTabPressure
    devTabPressure.Value = 5

    Console.WriteLine(devTabPressure.Value) ' Writes a 5
    Console.WriteLine(devTabPressure2.Value)  ' ALSO Writes a 5
    Console.Read()