【发布时间】:2018-01-20 10:00:57
【问题描述】:
我已尝试阅读此处的几个重载问题以了解如何做到这一点,但据我所知,重载括号与其他运算符不同,因为它需要在类中重载?
我的项目中有一个文件 main.cpp,我正在尝试重载 () 运算符,如下所示:
class vector<int> {
public:
bool operator((iterator a);
};
具有匹配功能。
bool vector<int>::operator()(vector<int>::iterator a) {
return (*a > 0);
}
但我遇到了几个错误,第一个是:
一个显式的特化必须在'template '类之前 向量 {
我试图纠正错误的要求,但似乎我对该过程的理解还不够好。
这里重载运算符的正确方法是什么?
提前感谢您的任何回复。
【问题讨论】:
-
你需要深入了解 C++ 模板
-
这不是超载的问题。这是template specialization 的问题。
标签: c++ vector operator-overloading parentheses