Этот сайт использует cookies. Продолжение работы с сайтом означает, что Вы согласны!
Перегрузка оператора ()
Перегрузка оператора ()
позволяет обработать вызов экземпляра класса как вызов функции. Количество параметров и тип возвращаемого значения в «операторном» методе могут быть произвольными. Допускается присваивание параметрам значений по умолчанию. Внутри метода ко всем членам объекта можно обращаться напрямую или через указатель this
. Обратите внимание на то, что перегрузить оператор ()
с помощью дружественной или обычной функции нельзя. Пример перегрузки оператора ()
приведен в листинге 14.5.
Листинг 14.5. Перегрузка оператора ()
#include <iostream>
class C {
int x_;
public:
C() { x_ = 0; } // Конструктор по умолчанию
explicit C(int x) { x_ = x; } // Обычный конструктор
void operator()(int x) { x_ = x; }
int operator()() const { return x_; }
};
int main() {
C obj;
obj(10);
std::cout << obj() << std::endl; // 10
std::cout << (20 + obj()) << std::endl; // 30
return 0;
}
Реквизиты
ЮMoney (Yandex-деньги): 410011140483022
ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов