Это хорошо определяется стандартом языка, и то, является ли это плохим стилем или нет, зависит от личных предпочтений, а также от контекста. У меня есть одна функция, использующая условия, подобные этим, которые, на мой взгляд, выглядят и работают очень хорошо, и которые, по-моему, были бы менее читабельными, когда приращение было бы выведено из условия.
const char *GetStat(int statId)
{
int id = 0;
if (statId==id++)
{
return "Buffers";
}
else if (statId==id++)
{
return "VBuffers";
}
#ifndef _XBOX
else if (statId==id++)
{
return "Reset factor";
}
#endif
else if (statId==id++)
{
return "CB Mem";
}
return "";
}
Примечание: приращения здесь вообще не "выполняются", приличный компилятор исключит переменную ++, выполненную для id, в константы.