C++中的常见关键字

常见关键字

new和delete:

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

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

const: 定义不可修改的值

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

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

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

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

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

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

typeid和decltype:

  • typeid:是RTTI(运行时类型识别)的一部分,在多态场景中,typeid用于检查对象的实际类型。它在底层依赖虚表和类型信息存储
  • decltype:是在编译时推导类型的工具,它不会生成任何代码,而是通过编译器的类型推断机制来确定表达式的类型
相关推荐
hsjkdhs39 分钟前
万字详解C++之构造函数析构函数
开发语言·c++
SELSL1 小时前
SQLite3的API调用实战例子
linux·数据库·c++·sqlite3·sqlite实战
什么半岛铁盒2 小时前
C++项目:仿muduo库高并发服务器-------Channel模块实现
linux·服务器·数据库·c++·mysql·ubuntu
闭着眼睛学算法2 小时前
【华为OD机考正在更新】2025年双机位A卷真题【完全原创题解 | 详细考点分类 | 不断更新题目 | 六种主流语言Py+Java+Cpp+C+Js+Go】
java·c语言·javascript·c++·python·算法·华为od
ShineSpark2 小时前
C++面试11——指针与引用
c++·面试
杨小码不BUG3 小时前
CSP-J/S初赛知识点精讲-图论
c++·算法·图论··编码·csp-j/s初赛
初圣魔门首席弟子3 小时前
flag使用错误出现bug
c++·bug
Mr_WangAndy4 小时前
C++设计模式_创建型模式_原型模式Prototype
c++·设计模式·原型模式
奔跑吧邓邓子4 小时前
【C++实战㊷】C++ 原型模式实战:从概念到高效应用
c++·实战·原型模式
奔跑吧邓邓子4 小时前
【C++实战㊶】C++建造者模式:复杂对象构建的秘密武器
c++·实战·建造者模式