C6314

تحذير C6314: ترتيب العمليات غير صحيحة: تمثل-أو لها الأسبقية مختلف عن العامل التعبير بشرط. قم بإضافة الأقواس إلى توضيح هدف

هذه الرسالة يشير إلى أن تعبير يحتوي على تمثل-أو (عامل التشغيل|) تم الكشف عنها في تعبير تم اختباره لعملية الشرطي ( ?:).

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

مثال

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

int SystemState();

int f(int SignalValue)
{
  return SystemState() | (SignalValue != 0) ? 1 : 0;
}

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

int SystemState();

int f(int SignalValue)
{
  return SystemState() | ((SignalValue != 0) ? 1 : 0);
} 

راجع أيضًا:

المرجع

Bitwise Inclusive OR Operator: |

Conditional Operator: ? :