相关疑难解决方法(0)

带有运算符的函数模板

在C++中,你可以在一个类上有一个模板化运算符吗?像这样:

class MyClass {
public:
    template<class T>
    T operator()() { /* return some T */ };
}
Run Code Online (Sandbox Code Playgroud)

这实际上似乎编译得很好,但混淆在于如何使用它:

MyClass c;
int i = c<int>(); // This doesn't work
int i = (int)c(); // Neither does this*
Run Code Online (Sandbox Code Playgroud)

它编译的事实向我暗示它是可行的,我只是对如何使用它感到茫然!有什么建议,或者这种使用方法是非首发?

c++ templates operator-overloading

31
推荐指数
2
解决办法
3万
查看次数

标签 统计

c++ ×1

operator-overloading ×1

templates ×1