tmfc's .net Undocumented (1) SimpleBitVector struct

[入库:2005年8月18日] [更新:2007年3月25日]

本文简介:选择自 tmfc 的 blog

.net framework博大精深,本系列文章旨在挖掘一些.net内部类的实现以及一些未公布出来的类,借此为类设计乃至framework设计积累经验。笔者本身主要从事asp.net+c#的工作,故先把精力放在system.web namespace,本文是学习control类的副产品和预备知识.

simplebitvector32结构

32位的位标志

使用方法:

simplebitvector32 sbv = new simplebitvector32();

//判断第n位是否为真

int n = 7;

if(sbv[math.power(2,n)])

{

.

.

.

}

设置第n位;

int n = 7;

sbv[math.pow(2,n)] = true;

 

simplebitvector32结构实现:

struct simplebitvector32
{
   
private int data;

   
public int data
    {
       
get
        {
           
return data;
        }
    }

   
public bool this[int bit]
    {
       
get
        {
           
return ((data& bit) == bit);
        }
       
set
        {
           
if (value)
            {
               
this.data |= bit;
               
return;
            }
           
this.data &= ~bit;
        }
    }
}

本文关键:tmfc's .net Undocumented (1) SimpleBitVector struct
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top