Хотя ответ GMan на самом деле правильный, вы никогда не должны перегружать оператора, чтобы сделать что-то неожиданное - это идет вразрез со всеми правилами программирования хорошей практики. Когда пользователь читает код, он ожидает, что операторы будут вести себя как-то иначе, а заставить их вести себя по-другому - хорошо только для запутывающих соревнований по кодированию.
Оператор ()
в C ++ может использоваться для того, чтобы объект представлял функцию. На самом деле у него есть имя - оно называется functor и широко используется в STL для предоставления общих алгоритмов. Google для stl functor , чтобы узнать о хорошем использовании техники.