Рассмотрим следующую (упрощенную) ситуацию:
class Foo
{
private:
int evenA;
int evenB;
int evenSum;
public:
Foo(int a, int b) : evenA(a-(a%2)), evenB(b-(b%2)), evenSum(evenA+evenB)
{
}
};
Когда я создаю Foo следующим образом:
Foo foo(1,3);
тогда evenA равно 0, evenB равно 2, но будет ли evenSum инициализирован равным 2?
Я попробовал это на моей текущей платформе (iOS), и, похоже, это работает, но я не уверен, является ли этот код переносимым.
Спасибо за вашу помощь!