关于重载运算符求助
  • 板块学术版
  • 楼主HKHbest
  • 当前回复4
  • 已保存回复4
  • 发布时间2021/9/14 11:20
  • 上次更新2023/11/4 06:50:14
查看原帖
关于重载运算符求助
109625
HKHbest楼主2021/9/14 11:20

RT,正在做压位高精的全套代码。

在实现高精与longlong的比较时,首先写了一个平常无奇的类内重载小于号
(将longlong转成高精然后比较):

bool operator < (long long &in) const
{
	BigInterger cnt;
	cnt=in;
	return (*this)<cnt; 
}

之后应该套路地利用新重载的<来重载>,>=,<=,==,!=等。

但是编译报错了。

[Error] no match for 'operator<' (operand types are 'const long long int' and 'const BigInterger')

情况似乎是我只写了 高精< long long
没有写long long<高精

在不把重载运算符放在结构体外的前提下如何解决这个问题?

2021/9/14 11:20
加载中...