Megosztás a következőn keresztül:


Fordító figyelmeztetése (4. szint) C4706

feltételként használt hozzárendelés

Megjegyzések

A feltételes kifejezések tesztértéke egy hozzárendelés eredménye.

A hozzárendelésnek van egy értéke (a hozzárendelés bal oldalán lévő érték), amely legálisan használható egy másik kifejezésben, beleértve egy tesztkifejezést is.

Example

Az alábbi példa c4706-ot hoz létre:

// compile with: /W4
int main()
{
   int a = 0, b = 0;
   if (a = b) // C4706
   {
   }
}

Tiltsa le a figyelmeztetést ((kifejezéssel)). Például:

// compile with: /W4
int main()
{
   int a = 0, b = 0;
   if ((a = b)) // No warning
   {
   }
}

Ha a szándéka egy kapcsolat tesztelése, nem pedig hozzárendelés, használja a == operátort. Például az alábbi tesztek azt vizsgálják, hogy az a és a b egyenlő-e:

// compile with: /W4
int main()
{
   int a = 0, b = 0;
   if (a == b)
   {
   }
}

Ha a tesztértéket egy hozzárendelés eredményének szeretné beállítani, ellenőrizze, hogy a hozzárendelés nem nulla vagy nem null értékű-e. A következő kód például nem hozza létre ezt a figyelmeztetést:

// compile with: /W4
int main()
{
   int a = 0, b = 0;
   if ((a = b) != 0)
   {
   }
}