я перегрузить оператор(), следующим образом:В чем проблема следующего кода?
#include <iostream>
using namespace std;
class Test {
public:
Test() {};
void operator() (Test);
};
void Test::operator() (Test test) {
cout << "yes";
}
int main() {
Test test;
(test);
}
, когда я запускаю его, «да» не появляется? возникнут проблемы с кодом выше?
аннулируются оператор() (Test); параметр is() (Test), поэтому мы не должны передавать его как (тест)? –
'Test :: operator()' принимает значение параметра «Тест» по значению. –
На самом деле это должно быть что-то вроде: 'test (test);' (call member function 'operator()' on 'test', передавая (другой)' test' в качестве аргумента. –