LINUX.ORG.RU

История изменений

Исправление m0rph, (текущая версия) :

Можно сделать нечто подобное и с конструктором. Здесь сначала создается временный объект класса Foo, а потом у этого объекта вызывается operator()(int):

#include <iostream>

class Foo {
public:
    int operator()(int value) const
    {
        return value;
    }
};

int main()
{
    std::cout << Foo()(20) << std::endl;
    return 0;
}

Исходная версия m0rph, :

Можно сделать нечто подобное и с конструктором. Здесь сначала создается временный объект класса Foo, а потом у этого объекта вызывается operator()(int):

#include <iostream>[br][br]class Foo {[br]public:[br]    int operator()(int value) const[br]    {[br]        return value;[br]    }[br]};[br][br]int main()[br]{[br]    std::cout << Foo()(20) << std::endl;[br]    return 0;[br]}[br]