我正在攻讀MCSD認證。下面給出的是我的書中給出的示例代碼具有多個return語句的函數是如何工作的?
private bool ValidateRow(TextBox descrTextBox, TextBox quantityTextBox,
TextBox priceEachTextBox, out int quantity, out decimal priceEach)
{
// Assume these are 0.
quantity = 0;
priceEach = 0;
// If no values are present, the row is okay.
if ((descrTextBox.Text == "") &&
(quantityTextBox.Text == "") &&
(priceEachTextBox.Text == ""))
return false;
// Some values are present to make sure all are.
if (ValidateRequiredTextBox(descrTextBox, "Description")) return true;
if (ValidateRequiredTextBox(quantityTextBox, "Quantity")) return true;
if (ValidateRequiredTextBox(priceEachTextBox, "Price Each")) return true;
// All values are present.
// Try to parse quantity.
if (!int.TryParse(quantityTextBox.Text, out quantity))
{
// Complain.
DisplayErrorMessage(
"Invalid format. Quantity must be an integer.",
"Invalid Format", quantityTextBox);
return true;
}
從上面你可以看到有很多返回語句。這些返回聲明如何工作?正如你可以從上面看到的「ValidateRequiredTextBox」函數使用三次。
如果你被禁止在谷歌 - [返回(C#參考)](http://msdn.microsoft.com/en-us/library/1h3swy84.aspx) –
你是什麼意思他們如何工作?他們返回函數說它將返回的類型。有多個,因爲代碼可以採用多個路徑。 – tymeJV
「ValidateRequiredTextBox」方法用不同的參數調用。所以它會根據輸入參數的不同而返回true或false。 'return'只會根據'if'語句的結果而發生。 –