谁知道 |= 这个是用来做什么的?什么功能?bool bMappingOk ; bMappingOk = DtApi.Debug.DTMapComponentEx(hDeduper, 1, DtApi.Debug.MP_ZIP9);
 bMappingOk |= DtApi.Debug.DTMapComponentEx(hDeduper, 2, DtApi.Debug.MP_LAST);
 bMappingOk |= DtApi.Debug.DTMapComponentEx(hDeduper, 3, DtApi.Debug.MP_FIRST);
 bMappingOk |= DtApi.Debug.DTMapComponentEx(hDeduper, 4, DtApi.Debug.MP_ADDR);

解决方案 »

  1.   

    x |= y 相当于 x = x | y
      

  2.   

    x |= y
    相当于x = x | y
    是或赋值
      

  3.   

    bMappingOk |= DtApi.Debug.DTMapComponentEx(hDeduper, 2, DtApi.Debug.MP_LAST); 
    bMappingOk = bMappingOk  |DtApi.Debug.DTMapComponentEx(hDeduper, 2, DtApi.Debug.MP_LAST); |代表或
      

  4.   

    就是取反的意思
    比如DtApi.Debug.DTMapComponentEx(hDeduper, 2, DtApi.Debug.MP_LAST); 返回true
    那么bMappingOk =false;
      

  5.   

    或了之后再赋值
    a|=b;
    等价于a=a|b;
      

  6.   

    汗! 不是!符号啊。看错了。
          bool b = true;
          b |= false;那么b就等于True
      

  7.   

    或操作符,x |= y 等于 x= x | y;
      

  8.   

    按位运算操作符吧
    "x |= y 
    相当于x = x | y "
    C#里面一般是数值运算或者枚举可以用这个.
    bool a = true;
    bool b = false;
    a |= b;
    Console.WriteLine("result:" +a);
    Reflector反编译结果是(当然下面的结果在C#中编译不过)
    public static void Main()
    {
        bool flag;
        bool flag2;
        flag = 1;
        flag2 = 0;
        flag |= flag2;
        Console.WriteLine("result:" + ((bool) flag));
        return;