1
16
如果您想要区分编译时常量和非编译时常量,那么您就没有机会了。那是不可能的。 但是,如果要区分非常量变量和常量变量(以及包括的所有内容,如文本),则可以使用常量引用和非常量引用参数重载函数。对于这种情况,C++标准引入了额外的规则,使得这种不明确的情况不含糊。
在这件事上,我们做了以下决定
请注意,它无法区分y和z,即使z的值是编译时常数(称为整型常量表达式或ICE),而y不是。 你什么 可以 则只接受编译时值。重载函数,使一个是模板,另一个不是模板
它的行为如下:
|
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
rainer · 后台插入程序的初始化 1 年前 |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |