当前位置: 首页 > news >正文

做网络课堂的平台有哪些网站短视频排名seo

做网络课堂的平台有哪些网站,短视频排名seo,wordpress卡蜜 插件,备案网站可以做论坛么三向比较运算符可以用于确定两个值的大小顺序&#xff0c;也被称为太空飞船操作符。使用单个表达式&#xff0c;它可以告诉一个值是否等于&#xff0c;小于或大于另一个值。 它返回的是类枚举&#xff08;enumeration-like&#xff09;类型&#xff0c;定义在 <compare> …

三向比较运算符可以用于确定两个值的大小顺序,也被称为太空飞船操作符。使用单个表达式,它可以告诉一个值是否等于,小于或大于另一个值。

它返回的是类枚举(enumeration-like)类型,定义在 <compare>std 名称空间中。其运算的结果如下:

数据类型含义
如果操作数为整数类型,其结果称为 强排序(strong_ordering)strong_ordering::less左边的操作数小于右边的操作数
strong_ordering::greater左边的操作数大于右边的操作数
strong_ordering::equal左边的操作数等于右边的操作数
如果操作数为浮点类型,其结果称为 偏序(partial_ordering)partial_ordering::less左边的操作数小于右边的操作数
partial_ordering::greater左边的操作数大于右边的操作数
partial_ordering::equivalent左边的操作数等于右边的操作数
partial_ordering::unordered无法比较时(有一个非数字)
如果操作数为自己实现的类型,称为 弱排序(weak_ordering)weak_ordering::less左边的操作数小于右边的操作数
weak_ordering::greater左边的操作数大于右边的操作数
weak_ordering::equivalent左边的操作数等于右边的操作数

三向比较运算符的用法

三向比较运算符的使用方式如下:

#include <iostream>using namespace std;int main() {int i{ 11 };strong_ordering result{ i <=> 0 };cout << typeid(result).name() << endl;if (result == strong_ordering::less) { cout << "less" << endl; };if (result == strong_ordering::greater) { cout << "greater" << endl; };if (result == strong_ordering::equal) { cout << "equal" << endl; };return 0;
}

可以得到以下的输出结果

struct std::strong_ordering
greater

同时,<compare> 还提供了一些函数来解释排序结果,有以下几种:std::is_eq()is_neq()is_lt()is_lteq()is_gt()is_gteq()

使用的方式如下:

#include <iostream>
#include <compare>
using namespace std;int main() {int i{ 11 };strong_ordering result{ i <=> 0 };cout << typeid(result).name() << endl;if (is_lt(result)) { cout << "less" << endl; };if (is_gt(result)) { cout << "greater" << endl; };if (is_eq(result)) { cout << "equal" << endl; };return 0;
}

三向比较运算符的作用

在编写自己的类时,如果需要实现比较运算符,在 C++20 之前,通常要重载 6 个比较运算符:(><<=>===, !=)。在 C++20 引入了三向比较运算符以后,就可以只重载 <=>== 后,其他的运算符会由编译器为我们生成。(在 C++20 中,重载了 == 后,!= 也会自动重载)

以下是使用示例:

#include <iostream>
#include <compare>
using namespace std;class MyClass {
public:MyClass(int ini) : _data{ ini } {}auto operator<=>(const MyClass& other) const {return this->_data <=> other._data;}auto operator==(const MyClass& other) const {return this->_data == other._data;}
private:int _data;
};int main() {MyClass a{ 10 }, b{ 20 };if (a < b) {cout << "a < b" << endl;}if (a != b) {cout << "a != b" << endl;}return 0;
}

可以得到以下的运算结果:

a < b
a != b
http://www.shuangfujiaoyu.com/news/40967.html

相关文章:

  • 做网站需要合同吗平台推广员是做什么的
  • ps做网站字号大小优化方案官网
  • asp网站中停止后面代码的运行黄冈便宜的网站推广怎么做
  • seo搜外北海百度seo
  • 快手短视频小程序成都关键词优化报价
  • 机关网站建设工作总结苏州网站建设书生商友
  • 惠州做网站公司资源搜索引擎搜索神器网
  • 天津微网站建设谷歌浏览器官网手机版
  • 网站做彩票sem竞价推广公司
  • 高端响应式网站开发宁波seo整体优化公司
  • 成品网站怎么新建网页百度软件
  • 网站建设客服工作女生学电子商务好吗
  • 义乌市场官方网站灰色行业推广
  • 网站开发的流程拼多多跨境电商平台
  • 如何免费做网站 详细点说电商广告
  • 做搬运的话哪个网站好什么是网络推广员
  • 欧美专业牙科医院网站网页源码百度识图官网
  • 佛山做网站需要多少钱网站开发的公司
  • 自己做章网站魔贝课凡seo
  • 深圳网站建设手机网站建设百度app下载
  • 环球资源外贸平台怎么样seo优化操作
  • 网站开发岗位说明书描述建设一个网站的具体步骤
  • 网站开发模块全国人大常委会副委员长
  • 欧美做电影 迅雷下载网站百度地图推广怎么做的
  • 网站建设价类型seo是对网站进行什么优化
  • 北京企业做网站镇江网站建设
  • 网站建设制作细节重庆广告公司
  • 网站内容与功能设计新手做销售怎么开发客户
  • 驻马店网站建设熊掌号十大跨境电商erp排名
  • 济南建站联系企汇优百度百科搜索入口