C++中的常见关键字

常见关键字

new和delete:

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

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

const: 定义不可修改的值

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

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

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

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

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

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

typeid和decltype:

  • typeid:是RTTI(运行时类型识别)的一部分,在多态场景中,typeid用于检查对象的实际类型。它在底层依赖虚表和类型信息存储
  • decltype:是在编译时推导类型的工具,它不会生成任何代码,而是通过编译器的类型推断机制来确定表达式的类型
相关推荐
liulilittle8 分钟前
C++/CLI与标准C++的语法差异(一)
开发语言·c++·.net·cli·clr·托管·原生
小狄同学呀13 分钟前
VS插件报错,g++却完美编译?API调用错因分析
c++
程序员编程指南17 分钟前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
小乖兽技术36 分钟前
C#与C++交互开发系列(二十四):WinForms 应用中嵌入C++ 原生窗体
c++·c#·交互
张北北.1 小时前
【深入底层】C++开发简历4+4技能描述6
java·开发语言·c++
刚入坑的新人编程2 小时前
暑期算法训练.9
数据结构·c++·算法·leetcode·面试·排序算法
破刺不会编程3 小时前
linux线程概念和控制
linux·运维·服务器·开发语言·c++
程序员编程指南4 小时前
Qt OpenGL 集成:开发 3D 图形应用
c语言·数据库·c++·qt·3d
小徐不徐说4 小时前
动态规划:从入门到精通
数据结构·c++·算法·leetcode·动态规划·代理模式
程序员编程指南5 小时前
Qt 网络编程进阶:RESTful API 调用
c语言·网络·c++·qt·restful