当前位置: 首页 > news >正文

C++基础-this指针详解

本文详细讲解C++this指针

定义

this 是 C++ 中的一个关键字,一个特殊的指针,它指向当前对象地址(换句话说,其值为 &object),通过它可以访问当前对象的所有成员。

类定义好后我们就可以通过类来创建多个实例对象,每个对象都有各自的实例属性(实例变量),但是非内联成员函数(non-inline member function)只会诞生一份函数实例(换句话说每个对象需要共用同一个方法来操作实例属性)。在有多个实例对象访问同一个函数时,函数如何知道该操作哪个对象的属性?此时就需要 this 指针。

编译器会隐式地传递 this 指针,this 指针如同一个句柄,此时方法将根据句柄来确定需要操作哪个对象的属性。调用静态方法时,则不会隐式地传递 this 指针,因为静态函数不与类实例对象相关联,即不属于某个对象拥有而由所有实例对象共享。

几点说明

每一个对象都能通过 this 指针来访问自己的地址。

http://www.lryc.cn/news/261036.html

相关文章:

  • 如何一键生成多个文件二维码?批量文件二维码制作技巧
  • SQL连续
  • sql server导出与导入
  • DevEco Studio 项目鸿蒙(HarmonyOS)资源引用(自定统和系统)
  • 使用国内镜像源安装opencv
  • 人工智能与大数据的紧密联系
  • macbookpro 2024怎么恢复出厂设置
  • Linux系统编程(二):标准 I/O 库(下)
  • Mr. Cappuccino的第65杯咖啡——MacOS安装Docker
  • 解决 Docker Hub 国内无法访问的方法(Docker 镜像下载加速)
  • (第61天)多租户架构(CDB/PDB)
  • 【自定义Source、Sink】Flink自定义Source、Sink对ClickHouse进行读和批量写操作
  • linux 查看服务启动时间
  • [RK-Linux] 移植Linux-5.10到RK3399(六)| 检查GMAC(RTL8211F)配置使能千兆以太网
  • 博途WinCC专业版C/S架构入门指南
  • 大数据生态圈kafka在物联网中的应用测试
  • ChatGPT使用:一个发包机器人的提示词
  • Axure元件库的使用
  • Unity中Shader URP最简Shader框架(整理总结篇)
  • AT32F435飞控之DIATONE MAMBA MK5 F435 Anti-Interference
  • ntp时间同步配置中 server、pool和peer的区别
  • JMeter安装RabbitMQ测试插件
  • 基于ssm日用品网站设计论文
  • coco数据集格式的RandomCrop
  • 机器学习-KL散度的直观理解+代码
  • 【教程】制作 iOS 推送证书
  • ToolLLM model 以及LangChain AutoGPT Xagent在调用外部工具Tools的表现对比浅析
  • 【MySQL学习之基础篇】约束
  • 【DataSophon】大数据管理平台DataSophon-1.2.1基本使用
  • 基于redisson实现发布订阅(多服务间用避坑)