*** 作符可以用作功能吗? (C )

 *** 作符可以用作功能吗? (C ),第1张

概述这类似于我提出的另一个问题,但是,我创建了一个表达式类,其工作原理如下: expression<int, int> exp(10, 11, GreaterThan);//expression<typename T, typename U> exp(T val1, U val2, oper op);//where oper is a pointer to bool function(T, U) 这类似于我提出的另一个问题,但是,我创建了一个表达式类,其工作原理如下:

Expression<int,int> exp(10,11,GreaterThan);//Expression<typename T,typename U> exp(T val1,U val2,oper op);//where oper is a pointer to bool function(T,U)

其中GreaterThan是先前定义的函数.我想知道为什么我不能这样做:

Expression<int,>);

特别是当>被重载为

bool operator>(int a,int a){return (a > b);}

这与GreaterThan相同:

bool GreaterThan(int a,int b){return (a > b);}

一个返回bool并接受两个参数的函数.

解决方法 代替:

Expression<int,>);

你可以这样做:

Expression<int,operator>);

你可以,因为它不适用于整数.但它适用于您将重载的其他类型或运算符.您重载的运算符是正常函数,因此实际上您正在使用函数指针.

总结

以上是内存溢出为你收集整理的 *** 作符可以用作功能吗? (C )全部内容,希望文章能够帮你解决 *** 作符可以用作功能吗? (C )所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1222128.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存