字面值常量类

博客介绍了constexpr函数,其参数和返回值须为字面值类型,某些类也属字面值类型且可能含constexpr函数成员。还阐述了字面值常量类,包括聚合类和非聚合类的判定条件,以及字面值常量类的构造函数可以是constexpr函数。

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

constexpr函数的参数和返回值必须是字面值类型。除了算术类型、引用和指针外,某些类也是字面值类型。和其他类不同,字面值类型的类可能含有constexpr函数成员。这样的成员必须符合constexpr函数的所有要求,它们是隐式const的。
数据成员都是字面值类型的聚合类是字面值常量类。如果一个类不是聚合类,但他符合下述要求,则它也是一个字面值常量类:
·数据成员都必须是字面值类型。
·类必须至少含有一个constexpr构造函数。
·如果一个数据成员含有类内初始值,则内置类型成员的初始值必须是一条常量表达式;或者如果成员属于某种类类型,则初始值必须使用成员自己的constexpr构造函数。
·类必须使用析构函数的默认定义,该成员负责销毁类的对象。

constexpr构造函数

尽管构造函数不能是const的,但是字面值常量类的构造函数可以是constexpr函数。

转载于:https://www.cnblogs.com/CharlesNels/p/9555837.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值