csharp-委托

null conditional operator

drawMethodsDelegate?.Invoke ( e.Graphics );

回调函数

// 接收函数回调
public delegate int OnRecieve(string msg, string param = "");
public OnRecieve CBRecieve = null;

public void SetCallBackRecieve(OnRecieve cb)
{
CBRecieve = cb;
}

CBRecieve?.Invoke(last_response_msg);

gratingscale.SetCallBackRecieve(OnRecieveGratingscale);

public int OnRecieveGratingscale(string msg, string param = "")
{

return 0;
}