| 
                         | 
                    
                              1 
                        
                        
                                  5
                             
                            我看不出那个设计有什么不好的地方。 
   但是,请记住
    
   自从
    
  然而,这样做是丑陋的,您可能会认为这样做会导致未定义的行为。  | 
                
| 
                         | 
                    
                              2 
                        
                        
                                  0
                             
                            没问题。甚至可以使用etestmode变量(并为该类型定义位操作),因为在这种情况下,它可以保证保存所有可能的值。  | 
                
| 
                         | 
                    
                              3 
                        
                        
                                  0
                             
                            也见 What is the size of an enum in C? 对于某些编译器(例如VC++),可以使用此非标准宽度说明符: enum eTestMode : unsigned __int32
{ 
    TM_BASIC        = 1,    // 1 << 0 
    TM_ADV_1        = 1 << 1, 
    TM_ADV_2        = 1 << 2 
}; 
 
 | 
                
| 
                         | 
                    
                              4 
                        
                        
                                  0
                             
                            使用枚举来表示位模式、掩码和标志并不总是一个好主意,因为枚举通常提升为 签署 整数类型,而对于基于位的操作 未签名的 类型几乎总是可取的。  | 
                
                         
                     | 
                    AstralHex · 矩阵乘法代码工作不正常 8 月前 | 
| 
                         | 
                    Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 8 月前 | 
| 
                         | 
                    Die4Toast · 递归调用成员箭头运算符-> 8 月前 | 
| 
                         | 
                    Anka Hanım · 关于结构和动态数组地址的问题 8 月前 |