Показать сообщение отдельно
Старый 18.07.2017, 00:27   #255  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Если бы дело было только в этом.
Это изменение отревьюило 2 человека.. То есть втроем, с учетом того что сам девелопер тоже правил, они не смогли нормально скобочки сосчитать, и их никак не удивила эта странная констркция со сравнением двух энумов..
Не в скобках дело, а в полном абзаце мозга. Никакие тесты не помогут если мы проверяем потенциально на ноль одно значение, а делим на другое. При втором вызове функция может возвратить другое значение. C вероятностью практически нулевой конечно, но мы же программисты или где

X++:
AmountMST cost = this.itemPrice(ModuleInventPurchSales::Invent);
    AmountMST sales = this.itemPrice(ModuleInventPurchSales::Sales);
    ...

    //Avoid division by zero
    if (sales == 0)
    {
        mcrCatalogAreaAnalysisTmp.CogsPercent = 0;
    }
    else
    {
        mcrCatalogAreaAnalysisTmp.CogsPercent = cost / sales;
    }
За это сообщение автора поблагодарили: S.Kuskov (2).