Когда значение параметра out или out в C # действительно возвращается вызывающей стороне?
Когда я делаю назначениеout
или жеref
параметр, это значение, непосредственно присвоенное ссылке, предоставленной вызывающей стороной, илиout
а такжеref
Значения параметров, назначенные ссылкам, когда метод возвращает? Если метод выдает исключение, возвращаются ли значения?
Например:
int callerOutValue = 1;
int callerRefValue = 1;
MyMethod(123456, out callerOutValue, ref callerRefValue);
bool MyMethod(int inValue, out int outValue, ref int refValue)
{
outValue = 2;
refValue = 2;
throw new ArgumentException();
// Is callerOutValue 1 or 2?
// Is callerRefValue 1 or 2?
}