C6226

تحذير C6226: فريق العمل الضمني بين مختلف دلالياً عدد صحيح أنواع: تعيين-1 إلى HRESULT. استخدام E_FAIL بدلاً منه

Th هو التحذير يشير إلى أن HRESULTهو المعينة أو تهيئة مع القيمة 1- صريحة. Th هو تحذير هو عادة ما ينتج عن الارتباك مقصود صحيحاً و HRESULTأنواع. للإشارة إلى نجاح، رمزي ثابتة S_OKيستخدم. للإشارة إلى فشل، يجب استخدام الثوابت الرمزية بدءاً مع E_constant.

مثال

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

#include <windows.h>

VOID f( )
{
  HRESULT hr;
  LPMALLOC pMalloc;
  
  if (FAILED(CoGetMalloc(1, &pMalloc)))
  {
    hr = -1;
    // code ...
  }
  else
  {
    // code ...
  }
}

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

#include <windows.h>

VOID f( )
{
  HRESULT hr;
  LPMALLOC pMalloc;
  
  if (FAILED(CoGetMalloc(1, &pMalloc)))
  {
    hr = E_FAIL;
    // code ...
  }
  else
  {
    // code ...
  }
}

لهذا التحذير، SCODEنوع هو المكافئ إلى HRESULT.

راجع أيضًا:

موارد أخرى

تم بنجاح