天天看點

C#預設參數可以讓代碼變得更加簡潔明了與時俱進心裡敞亮了很多了

以前沒有預設參數這個說法時,為了讓别人調用我們的代碼友善一些,會寫很多構造函數,例如一個查詢方法貼一些代碼如下:

        public DataTable Search(string search)

        {

            return Search(string.Empty, search, null, null, string.Empty);

        }

        public DataTable Search(string search, string[] roleIds)

            return Search(string.Empty, search, roleIds, null, string.Empty);

        public DataTable Search(string search, string[] roleIds, bool? enabled)

        public DataTable Search(string search, string[] roleIds, string auditStates)

            return Search(string.Empty, search, roleIds, null, auditStates);

        public DataTable Search(string search, string[] roleIds, bool? enabled, string auditStates)

            return Search(string.Empty, search, roleIds, enabled, auditStates);

那采用了預設參數後,這部分代碼會被簡化成什麼樣子了呢?

        public DataTable Search(string search = null, string[] roleIds = null, bool? enabled = true, string auditStates = null)

哇靠,居然一行代碼就可以了,那麼多構造函數都不需要了, 代碼簡潔了很多了,清爽了很多,心裡也舒暢了.

新技術也往往會明顯提高生産效率.

本文轉自jirigala_bao 51CTO部落格,原文連結:http://blog.51cto.com/jirigala/812755