2011-08-18 176 views
-1

我對下面的代碼有困惑,即爲什麼我們需要將布爾值傳遞給方法以及它返回什麼?爲什麼我們需要將布爾值傳遞給方法

RefreshLookupList(false); 
private void RefreshLookupList(bool forExport) 

    { 
     grdLists.Rows.Clear(); 
     grdLists.DataSource = Lists.GetListItems(cboListType.SelectedValue); 
     grdLists.DataBind(); 

     lblCount.InnerText = "Lookups: " + grdLists.Rows.Count.ToString(); 
    } 
+0

你有沒有試過在CodeReview上問這個問題? – GregC

回答

0

看起來像陳舊的舊參數。刪除它。

該方法不返回任何內容。

+0

謝謝大家......但是如果我們給方法提供bool值,那麼它的意思是什麼? – shaker

+0

@shaker - 這取決於。很難說出原來的意圖是什麼。 –

0

從您發佈的代碼開始,它根本不需要布爾參數,您可以將它從方法簽名中移除,並查看您的代碼是否仍然編譯。

0

嗯,你需要傳遞的布爾值,因爲該方法的簽名要求一個

,並返回「無中生有」,因爲它宣佈爲無效,這是一個方法,而不是功能/特性

2

在這種特殊情況下,參數不被使用。但是將其從方法簽名中刪除可能並不安全。它可能專門用於更改簽名以避免與另一種方法發生命名衝突。

真的不好,但有時是必要的。

就我個人而言,我會嘗試刪除它。如果由於與名稱類似的方法發生衝突而將其刪除時,它不會編譯,我會將它保留在那裏,但使參數成爲默認值(如果您使用的是C#4)。我說讓它留在那裏,因爲有人可能會用反射來引用它。

如果您知道在應用程序中未使用反射,請右鍵單擊重構Visual Studio中的方法名稱並將其重命名,這也將重命名所有引用(但不是用於反射的文字引用)。然後刪除參數。

0

forExport未使用,但較早的實現可能已完成。 IE瀏覽器。 「由於歷史原因」。

在版本控制中檢查函數的歷史記錄。

0

它看起來像它從來沒有使用過,方法不會返回任何東西。

0

那麼,如果這是整體方法,然後傳遞forExport的值意味着什麼。

該方法不使用任何參數。

而且void方法的返回值爲null。

0

forExport變量從不使用,因此實際上是多餘的。此方法可能已被重新考慮並且方法變量未被刪除。

0

那麼如果這是整個代碼塊,那麼你根本不需要傳遞它。你可以刪除它。

在方法的代碼上進行搜索,找出還有什麼叫它。如果沒有,那麼你可以安全地刪除它。

試一試,並嘗試重新編譯代碼。祝你好運

相關問題