; CCurrency Amount2 (4. 38); C

Автор admin Понедельник, 18 мая 2009 11:32

; CCurrency Amount2 (4. 38); CCurrency Total; Total – Amountl + Amount2; } Компилятор языка С++ интерпретирует выражение Amountl + Amount2 как Amountl.operator+ (Amount2); Функция operator+ создает временный объект Temp класса CCurrency, содержащий размер денежной суммы, полученной в результате сложения двух объектов. Затем она возвращает временный объект. Кроме того, приведенное выше выражение указывает, что возвращаемый объект присваивается экземпляру Total класса CCurrency. Такой способ присваивания делает возможным поэлементное копирование компилятором переменных-членов одного класса в другой. Выражение, содержащее несколько перегруженных операторов сложения, как и при выполнении стандартной операции сложения, вычисляется слева направо. Например, следующая программа использует перегруженный оператор для сложения величин, хранимых в трех объектах класса CCurrency: void main О { CCurrency Advertising (235. 42); CCurrency Rent (823. 68); CCurrency Entertainment (1024. 32) CCurrency Overhead; Overhead – Advertising + Rent + Entertainment; Overhead.Pri ntAmount(); } Функцию operator+ можно упростить, зам


Комментарии закрыты.