2012-05-31 99 views
2

我很好奇,是否有任何關於何時使用位掩碼來幫助提高代碼可讀性和/或可維護性的規則或設計模式。位掩碼設計模式

我曾經在野外見過的一個地方是當有幾個或更多的配置參數需要傳遞給函數。

我從OOP的角度來看這個問題,但答案不一定僅限於OOP。

回答

1

我認爲掩碼主要是爲了改善時間和空間性能。從OOP的角度來看,它們代表的任何東西都可以封裝在適當的界面中。在C#中,您可以查看flags enums,以便將它們表示爲枚舉。

要將配置參數傳遞給方法,我通常更喜歡創建一個類。這樣,您可以擁有不僅僅是標誌的參數,而且客戶端不需要擔心按位操作。以一個例子來看看XmlWriterSettings class。有關標誌枚舉的示例,請參閱RegexOptions類。