读书人

如何判断集合数据中是否包含多个指定的

发布时间: 2012-04-27 11:57:44 作者: rapoo

怎么判断集合数据中是否包含多个指定的属性?
比如

TState = (a, b, c, d);
TStatus = set of TState;

var
s: TStatus;

怎么判断s里是否包含了a和c
用in的话,只能判断一个吧,难道要一层层的if判断?如果属性多了,写起来比较麻烦啊

[解决办法]
用交集,果是a和c,就表示存在

Delphi(Pascal) code
const CompareSet=[a]+[c];var s: TStatus;begin   s:=[a]+[c]+[d];   if s*CompareSet=CompareSet  then     showmessage('s中包含CompareSet');end; 

读书人网 >.NET

热点推荐