使用关键字import导入模块
<=>,用于确定两个值的大小顺序。它可以告诉你一个值是否大于,等于,小于另一个值。它返回枚举类型,定义在和std命名空间中。如果操作数是整数类型,则结果是强排序,为以下值:
- strong_ordering::less:第一个操作数小于第二个
- strong_ordering::greater:第一个操作数大于第二个
- strong_ordering::equal:第一个操作数等于第二个
如果操作数是浮点型,结果是一个偏序: - partial_ordering::less:
- partial_ordering::greater
- partial_ordering::equivalent:
- partial_ordering::unordered:
弱排序:
与if和switch语句中的用法相似,
讯享网
只能被用于范围for循环体内
聚合类型是满足以下要求的数组类型的对象或是结构体或类的对象:仅public数据成员,五用户声明或继承的构造函数,无虚函数和虚基类、private或protected的基类。
指派初始化器使用名称初始化聚合的数据成员,以点开头,后跟数据成员的名称。
指派初始化的顺序必须与数据成员的声明顺序一致,不允许混合使用指派初始化器和非指派初始化器。未使用指派初始化器初始化的任何数据成员都将使用默认值进行初始化。
讯享网
指派初始化的优点:
- 使用数据成员的默认值的话可以跳出初始化,这在列表初始化中是不允许的
- 当新成员被添加到数据结构时,使用指派初始化器的现有代码将继续起作用,新成员将使用默认值进行初始化。
如果希望保证始终在编译期间对函数进行求值,使用关键字consteval代替constexpr将函数转换为immediate function(立即函数),此时对d的求值就会在编译期间报错。
[[likely]] / [[unlikely]] 用于帮助编译器优化代码,例如这些属性可用于根据某个分支被采用的可能性来标记if和switch语句的分支。不过目前很少需要这些属性,因为编译器和硬件有足够强大的分支预测功能,可以自行解决。
讯享网
- string方法新增starts_with(str)和ends_with(str):字符串以给定的字串开始或结尾则返回true,否则false
- 从C++20开始string是一个constexpr类,这意味着string可用于在编译器执行操作,并可用于constexpr函数和类的实现

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/188716.html