参数在传递给方法时是否按顺序进行评估?
对于Java来说,它总是如此,对于C来说它不是,但C#的答案是什么?
样品
string.Format("byte1={0} byte2={1} byte3={2}",
getNextByte(),
getNextByte(),
getNextByte());
int pos=0;
byte[] arr=new byte[] {1,2,3,4,5,6};
byte getNextByte()
{
return arr[pos++];
}
Run Code Online (Sandbox Code Playgroud)
这个样本有效,但它只是运气还是规则?
c# ×1