我正在学习vs2015社区的C ++模板。这是我的代码,我想定义一个模板类并在main()
函数中调用成员函数。
template <typename T>
class Arithmetic {
T _a;
T _b;
Arithmetic() {};
public
Arithmetic(T a, T b) :_a(a), _b(b) {};
T max const() { return _a + _b; };
T minus const() { return _a - _b; };
};
int main() {
Arithmetic<int> ar(5,6);
cout << ar.max() << endl;
}
当我构建这个程序时,我在最后一行收到错误。它说:
表观调用的括号前面的表达式必须具有(指向 - )函数类型
我该怎么办?
答案 0 :(得分:4)
该错误表示尝试调用未定义为函数的函数max()。将const关键字后面的括号更改为标识符max:
之后from itertools import combinations
students = ["Tom","Jeff","Mary"]
schedule = list(combinations(students,2))
到
html2canvas
答案 1 :(得分:1)
using
:
public
const
移至正确的位置#include <iostream>
using std::cout;
using std::endl;
template <typename T>
class Arithmetic {
T _a;
T _b;
Arithmetic() {};
public:
Arithmetic(T a, T b) :_a(a), _b(b) {};
T max() const { return _a + _b; };
T minus() const { return _a - _b; };
};
int main() {
Arithmetic<int> ar(5,6);
cout << ar.max() << endl;
}
答案 2 :(得分:1)
对于其他任何人,这也可能是因为重新定义了方法或属性名称。即属性和方法可能具有相同的名称