C++中的常见关键字

常见关键字

new和delete:

  • new:分配内存,调用构造函数初始化对象
  • delete:释放内存,释放内存前会调用析构函数

static: 声明静态成员函数、静态成员变量、静态局部变量、静态全局变量(内部链接)

const: 定义不可修改的值

volatile: 告诉编译器某个变量的值可能在程序外部发生变化(如硬件寄存器、共享内存活多线程场景),因此编译器不能对该变量进行优化

在多线程环境中,volatile能确保主线程修改的共享变量对其他线程立即可见,但它不保证原子性操作,也不防止竞态条件

inline: 提示编译器将函数的代码直接插入调用点,而不是通过常规的函数调用机制。通常用于小函数,减少函数调用开销

friend: 允许指定某个函数或类访问另一个类的私有成员

mutable: 用于允许类的常量成员变量被修改,即使在常量成员函数中

this: 指向当前对象的指针,只有在类的成员函数内可用

typeid和decltype:

  • typeid:是RTTI(运行时类型识别)的一部分,在多态场景中,typeid用于检查对象的实际类型。它在底层依赖虚表和类型信息存储
  • decltype:是在编译时推导类型的工具,它不会生成任何代码,而是通过编译器的类型推断机制来确定表达式的类型
相关推荐
吾当每日三饮五升1 小时前
C++单例模式跨DLL调用问题梳理
开发语言·c++·单例模式
猫武士水星2 小时前
C++ scanf
开发语言·c++
捕鲸叉3 小时前
QT自定义工具条渐变背景颜色一例
开发语言·前端·c++·qt
Rossy Yan3 小时前
【C++面向对象——群体类和群体数据的组织】实现含排序功能的数组类(头歌实践教学平台习题)【合集】
c++·排序算法·面向对象·封装·查找
我搞slam3 小时前
全覆盖路径规划算法之BCD源码实现(The Boustrophedon Cellular Decomposition)
c++·算法·图搜索算法
Rossy Yan4 小时前
【C++数据结构——查找】二分查找(头歌实践教学平台习题)【合集】
开发语言·数据结构·c++·算法·查找·头歌实践教学平台·合集
埃菲尔铁塔_CV算法5 小时前
BOOST 在计算机视觉方面的应用及具体代码分析(二)
c++·人工智能·算法·机器学习·计算机视觉
mit6.82410 小时前
[Qt] 信号和槽(2) | 多对多 | disconnect | 结合lambda | sum
linux·前端·c++·qt·学习
gonghw40310 小时前
Linux开机LOGO更换以及附带问题
linux·c++
Stanford_110611 小时前
关于单片机的基础知识(一)
前端·c++·单片机·嵌入式硬件·微信公众平台·twitter·微信开放平台