C6299

تحذير C6299: سوف العائد صراحة بمقارنة حقل بت إلى نوع قيمة منطقية غير متوقع نتائج

افتراض غير صحيح يشير إلى هذا التحذير هذه القيم المنطقية و حقول بت متكافئة. 1 تعيين حقول بت إلى وضع 1 في بت واحد الخاص به؛ ومع ذلك، أي المقارنة من البت يتضمن الحقل إلى 1 فريق العمل ضمني من حقل بت إلى رقم صحيح موقعة فريق العمل هذا بتحويل 1 المخزن إلى-1 و يمكن للمقارنة بين العائد نتائج غير متوقعة.

مثال

يلي تعليمات برمجية ينشئ هذا التحذير:

struct myBits
{
  short flag : 1;
  short done : 1;
  //other members
} bitType;

void f( )
{
  if (bitType.flag == 1) 
  {
  // code...
  }
}

إلى تصحيح هذا التحذير، استخدم حقل بت كما هو موضح في التعليمة البرمجية التالية:

void f ()
{
  if(bitType.flag==bitType.done)
  {
    // code...
  }
}