搜索结果
查询Tags标签: constexpr,共有 33条记录-
C++ 中的 const 和 constexpr
原文:浅谈 C++ 中的 const 和 constexpr,原文中“用constexpr修饰某物并不保证它一定在编译时被计算,也可以在运行时被计算”,我觉得是错误的。 const和constexpr都可以来修饰对象和函数。 修饰对象的时候两者之间最基本的区别是:const修饰一个对象表示它是常量。这暗…
2022/7/30 1:25:16 人评论 次浏览 -
c++11 constexptr和常量表达式
常量表达式是指值不会改变并且在编译过程中就能得到计算结果的表达式。 编译过程中得到计算结果。 字面值属于常量表达式,用常量表达式初始化的const对象也是常量表达式。 一个对象(或表达式)是不是常量表达式由它的数据类型和初始值共同决定。 (注意!!!)对于这条…
2022/5/29 1:22:59 人评论 次浏览 -
c++:-1
C++第一部分介绍基础:c++:-0,本节介绍C++中函数使用。函数 函数调用 调用函数需要先声明函数原型 嵌套调用:参数传递在函数被调用时才分配形参的存储单元 实参可以是常量、变量或表达式 实参类型必须与形参相符 值传递是传递参数值,即单向传递 引用传递可以实现双向传…
2022/5/1 1:13:00 人评论 次浏览 -
c++小知识点:constexpr的用法
没写好,需要改正 const c++中的const是通过编译器来保证对象的常量性,强制比那一起将所有可能违背const对象的常量性都视作错误 用const修饰变量的语义是要求编译器去阻止所有对该变量的赋值行为。因此,必须在const变量初始化时就提供给它初值: constexpr 语义是常量表…
2022/2/5 20:15:29 人评论 次浏览 -
元编程 (meta-programming)
元编程 (meta-programming) 术语 meta:英语前缀词根,来源于希腊文。中国大陆一般翻译成”元“。 在逻辑学中,可以理解为:关于X的更高层次,同时,这个更高层次的范围仍然在X的范围之内。 meta-data meta-function meta-bank meta-verse meta-programming 因何而生 诞生…
2022/1/24 11:04:44 人评论 次浏览 -
C++标准 — C++14特性
C++标准 — C++14特性 一、变量模板二、lambda 表达式的新增功能1、泛化2、对捕获的变量和引用进行初始化 三、constexpr 函数可以包含多个语句四、整型字面量1、二进制字面量2、数字分割符 五、返回类型自动推导六、exchange七、quoted一、变量模板 在C++11及之前,我们只…
2022/1/16 14:04:23 人评论 次浏览 -
C++标准 — C++14特性
C++标准 — C++14特性 一、变量模板二、lambda 表达式的新增功能1、泛化2、对捕获的变量和引用进行初始化 三、constexpr 函数可以包含多个语句四、整型字面量1、二进制字面量2、数字分割符 五、返回类型自动推导六、exchange七、quoted一、变量模板 在C++11及之前,我们只…
2022/1/16 14:04:23 人评论 次浏览 -
关于C++中constexpr的用法
在C++11 primer中,关于constexpr用法给出的解释是: 允许将变量声明为constexpr类型以便由编译器来验证变量的值是否是一个常量表达式。声明为constexpr的变量一定是一个常量,而且必须用常量表达式初始化; 第一句中,constexpr会在编译之前就给出计算结果:但是条件是:…
2022/1/3 14:37:28 人评论 次浏览 -
关于C++中constexpr的用法
在C++11 primer中,关于constexpr用法给出的解释是: 允许将变量声明为constexpr类型以便由编译器来验证变量的值是否是一个常量表达式。声明为constexpr的变量一定是一个常量,而且必须用常量表达式初始化; 第一句中,constexpr会在编译之前就给出计算结果:但是条件是:…
2022/1/3 14:37:28 人评论 次浏览 -
《Effective Modern C++》学习总结(条款11- 15)
条款11:优先使用delete关键字删除函数而不是private却又不实现的函数 1.=delete 是C++ 11新特性——见侯捷C++ 九中的描述删除的函数不能通过任何方式被使用 方便起见,删除函数被声明为公有的,而不是私有的。这样设计的原因是,使这个函数为公有的可以产生更易读的错误…
2021/12/24 11:08:00 人评论 次浏览 -
《Effective Modern C++》学习总结(条款11- 15)
条款11:优先使用delete关键字删除函数而不是private却又不实现的函数 1.=delete 是C++ 11新特性——见侯捷C++ 九中的描述删除的函数不能通过任何方式被使用 方便起见,删除函数被声明为公有的,而不是私有的。这样设计的原因是,使这个函数为公有的可以产生更易读的错误…
2021/12/24 11:08:00 人评论 次浏览 -
C++语言导学 第一章 基础知识 - 1.6 常量
第一章 基础知识 1.6 常量1.6 常量 C++支持两种不变性概念: const:大致的意思是“我承诺不改变这个值”。主要用于说明接口,使得在用指针和引用将数据传递给函数时就不必担心数据会被改变了。编译器强行执行const做出的承诺。const的值可在运行时计算。constexpr:大致…
2021/12/18 9:19:41 人评论 次浏览 -
C++语言导学 第一章 基础知识 - 1.6 常量
第一章 基础知识 1.6 常量1.6 常量 C++支持两种不变性概念: const:大致的意思是“我承诺不改变这个值”。主要用于说明接口,使得在用指针和引用将数据传递给函数时就不必担心数据会被改变了。编译器强行执行const做出的承诺。const的值可在运行时计算。constexpr:大致…
2021/12/18 9:19:41 人评论 次浏览 -
C++中const以及constexpr
一.const常量与#define比较define只是简单的替换,没有类型,const可以做到防窜改与类型安全。 而且#define会在内存中可能(有几次替换就有几次拷贝)有多份拷贝,对于字面值常量加不加const都一样,例如:const char* arr = “123”;,储存在常量区,只有一份拷贝;对于局…
2021/11/28 14:10:24 人评论 次浏览 -
C++中const以及constexpr
一.const常量与#define比较define只是简单的替换,没有类型,const可以做到防窜改与类型安全。 而且#define会在内存中可能(有几次替换就有几次拷贝)有多份拷贝,对于字面值常量加不加const都一样,例如:const char* arr = “123”;,储存在常量区,只有一份拷贝;对于局…
2021/11/28 14:10:24 人评论 次浏览