dwStyle|=LVS_REPOPT|LVS_SHOWSELALWAYS|LVS_EDITLABELS 
dwStyle&=~(LVS_REPOPT|LVS_SHOWSELALWAYS|LVS_EDITLABELS)
这两个怎么会一样? msdn的例子
(A & B)
         0000 0000 1010 1010
         0000 0000 0100 1011
         -------------------
         0000 0000 0000 1010
(~A)   
         0000 0000 1010 1010
         -------------------
         0000 0000 0101 0101
如果用&的话,结果 不能得到 A 与B 的或集啊

解决方案 »

  1.   

    两者刚好相反.
    dwStyle|=LVS_REPOPT|LVS_SHOWSELALWAYS|LVS_EDITLABELS
    是加上这些风格dwStyle&=~(LVS_REPOPT|LVS_SHOWSELALWAYS|LVS_EDITLABELS)
    是去掉这些风格Windows定义这些时是0001,0010,0100等等以此类推的.
    所以可以思考一下,某个style为0010,取反后为1101,
    再做与运算刚好就是去掉了原本中间的1,也就是去掉了这种style
      

  2.   

    具体可以参考<windows高级编程>
      

  3.   

    这两个不一样啊,dwStyle|=LVS_REPOPT|LVS_SHOWSELALWAYS|LVS_EDITLABELS 是置这几位,而dwStyle&=~(LVS_REPOPT|LVS_SHOWSELALWAYS|LVS_EDITLABELS)则是清掉这几位,作用完全相反的。