boost::less_than_comparable 使用

本文介绍如何通过继承boost::less_than_comparable来简化比较操作符的实现。只需重写小于运算符(operator<),其他比较运算符如小于等于(<=)、大于(>)将自动生成。文中提供了一个具体的例子,展示如何定义一个类并实现这些操作符。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

boost::less_than_comparable

继承使用此类可以只重写operator< ,<= ,>会自动生成

头文件:#include <boost/operators.hpp>

实例:

class point :public boost::less_than_comparable<point>
{
public:
	point(int num = 0) :num_(num){}
	int getNum()const{ return num_; }

private:
	int num_;
};

inline bool operator<(point lhs, point rhs)
{
	return lhs.getNum() < rhs.getNum();
}
int main()
{
	point t1(10);
	point t2;
	if (t1 < t2)
	{
		std::cout << "t1 < t2" << std::endl;
	}
	std::cin.get();
	return 1;
}

详细了解 点击打开链接 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值