你自己定义的Set你还不知道吗?Ord(Set中最后一个元素)+1就是元素个数了,枚举出各个元素的值?没必要吧,你自己定义的啊

解决方案 »

  1.   

    我的程序中是把我筛选的一些数放入Set中,然后下一批数再存入时,检查这批数的集合是不是与以前的集合一样(利用集合的无序性的特点),如果一样则不存储,不一样则存入一个动态数组中。
    到子程序未尾则把这些集合的元素值全部输出。
    就这样。
    有什么办法吗?
      

  2.   

    假设
    type
      a=set of byte;
    var 
      b,c:a;
      i:byte; //此类型应与a的基类一致
    检查集合是否一致:
    if b=c then ...
    遍历
    for i:=Lo(i) to Hi(i) do
    begin
      if [i] in b then
        输出i...以上是唯一的方法
      

  3.   

    我还想捡几个现成的Delphi函数用用,看来Borland没给俺这个方便