2012-05-31 63 views
2

我很好奇,是否有任何关于何时使用位掩码来帮助提高代码可读性和/或可维护性的规则或设计模式。位掩码设计模式

我曾经在野外见过的一个地方是当有几个或更多的配置参数需要传递给函数。

我从OOP的角度来看这个问题,但答案不一定仅限于OOP。

回答

1

我认为掩码主要是为了改善时间和空间性能。从OOP的角度来看,它们代表的任何东西都可以封装在适当的界面中。在C#中,您可以查看flags enums,以便将它们表示为枚举。

要将配置参数传递给方法,我通常更喜欢创建一个类。这样,您可以拥有不仅仅是标志的参数,而且客户端不需要担心按位操作。以一个例子来看看XmlWriterSettings class。有关标志枚举的示例,请参阅RegexOptions类。