out
- 作为参数修饰符,它允许按引用而不是按值向方法传递参数。
- 接口和委托的泛型类型参数声明中,该声明指定类型参数为协变。
public void Main(){double radiusValue = 3.92781;//计算圆的周长和面积,并将结果返回给 Main().CalculateCircumferenceAndArea(radiusValue, out double circumferenceResult, out areaResult);System.Console.WriteLine($"半径为的圆的周长 {radiusValue} is {circumferenceResult}.");System.Console.WriteLine($"圆的半径是 {radiusValue} is {areaResult}.");Console.ReadLine();}//计算方法public static void CalculateCircumferenceAndArea(double radius, out double circumference, out double area){circumference = 2 * Math.PI * radius;area = Math.PI * (radius * radius);}
ref
- 在方法签名和方法调用中,通过引用将参数传递给方法。
- 在方法签名中,按引用将值返回给调用方。
-
gts.mc.TJogPrm jog;gts.mc.GT_SetJogPrm(ref jog);
struct
- 结构类型(“structure type”或“struct type”)是一种可封装数据和相关功能的值类型 。
-
public struct Coords
{public Coords(double x, double y){X = x;Y = y;}public double X { get; }public double Y { get; }public override string ToString() => $"({X}, {Y})";
}//===================================================================================
//===================================================================================public struct TTrapPrm
{public double acc;public double dec;
}public void PTPCard(TTrapPrm trapPrm)
{trapPrm.acc = 0.5;trapPrm.dec = 0.5;
}