R Справочное руководство по С++

R.13.4.7 Инкремент и декремент.

   


Назад  |  Вперёд

Функция с именем operator++ и с одним параметром задает для объектов некоторого класса операцию префиксного инкремента ++. Функция с именем operator++ и с двумя параметрами задает для объектов некоторого класса операцию постфиксного инкремента ++. Для постфиксной операции ++ второй параметр должен быть типа int, и, когда в выражении встречается операция постфиксного инкремента, функция operator++ вызывается со вторым параметром, равным нулю. Приведем пример:

           class X {
           public:
             X operator++();   // префиксная ++a
             X operator++(int) // постфиксная a++
           };

           void f(X a)
           {
             ++a;    // a.operator++();
             a++;    // a.operator++(0);

             a.operator++();  // явный вызов: действует как ++a;
             a.operator++(0); // явный вызов: действует как a++;
           }

Префиксные и постфиксные операции декремента -- определяются аналогичным образом.


Назад  |  Вперёд


OtDiatlovaOU
К началу книги

Оформление и дизайн книги OtDiatlovaOU.
Вся книга, архив.