c++中的THIS

1、编译器只分配用于保存数据的内存,代码则被放在内存的公用区,可以为所有的对象共享。
2、既然为共享,那么C++如何区分是该类的哪个对象在操作呢,通过THIS指针实现.
3、可以通过下面方法,避免同一对象的赋值
void ctest::assign(ctest &t)
{
if (this==&t)
{
//为同一对象赋值
}
else
{
//可以正常赋值
}
}
CPP中的this指针 this指针是类的一个自动生成、自动隐蔽的私有成员,它存在于类的非静态成员中,指向被调用函数所在的对象。 全局仅有一个this指针,当一个对象被创建时,this指针就存放指向对象数据的首地址。 class Ctest { public: void Funtest(int iValue) { _iValue = iValue; } void Prin... 阅读详情

相关推荐

CMakeTestCCompiler.cmake错误解决

CMakeTestCCompiler.cmake错误解决欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 最近编译项目的时候,遇到一个cmake的错误,具体错误信息如下: /path-to-pr

昨夜星辰的博客 2万+

浅谈C++中的this指针

#include using namespace std ; 一、this的实现 class Date1 { public: void InitDate(int year, int month, int day) { _year = year; _month = month; _day = day; } protected: int _year;

hj605635529的博客 540

Cadence Allegro安装全攻略:从准备到优化的完整指南

本文提供了一份详尽的Cadence Allegro安装教程,涵盖从系统准备、硬件要求到获取安装文件的完整前期工作。指南逐步解析了自定义安装、路径选择及核心组件配置,并重点阐述了许可证服务器的环境变量设置与服务启动等关键激活步骤,最后给出了首次启动验证、个性化优化及常见问题排错方案,助您高效完成安装与配置。

weixin_29243063的博客 185

c++中的this

c++中的this一、c++中为何要有this二、this定义说明三、this总结 一、c++中为何要有this 1、先来看一个例子 #include "stdafx.h" #include <iostream> using namespace std; class Student{ private: char *m_name; int m_age; float m_score; public: void setage(int m_age); //声明构造函数 Student(cha

junxuezheng的博客 2万+

APM32F103 配置CAN

摘要: 本文介绍了基于APM32F103RCT6的CAN通信实现,包含GPIO初始化、CAN配置、数据收发功能。通过配置CAN1的GPIO引脚(PB8/PB9)和波特率(500Kbps),实现标准帧格式的数据传输。发送函数支持8字节数据包,接收函数通过FIFO0处理消息,并根据接收ID触发响应发送(如ID 0x1回复0x2)。代码还包含错误状态检测(如总线关闭处理)和过滤器配置(32位掩码模式)。整体实现了基础的CAN通信与错误管理功能。

weixin_43676660的博客 860

Modbus 通信协议详解

Modbus是由 Modicon(现为施耐德电气公司的一个品牌)在 1979 年发明的,是全球第一个真正用于工业现场的总线协议。ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。其系统结构既包括硬件、亦包括软件。它可应用于各种数据采集和过程监控。为更好地普及和推动Modbus在基于以太网上的分布式应用,目前施耐德公司已将Modbus协议的所有权移交给 IDA(,分布式自动化接口)组织,并成立了 Modbus-IDA 组织。

Projectsauron 的博客 7万+

CPP中的This

CPP中的This为什么c++会使用thisthis的特性无:one: **为什么会使用this**?:two:this有哪些特性? 为什么c++会使用this this的特性 无 1️⃣ 为什么会使用this? 在类中如果有多个成员函数,我们如果创建多个变量进行调用。编译器无法区分函数体中不同的对象。所以c++引入this来解决这个问题。即c++为每个静态成员增加了this隐藏指针,用该指针指向函数运行时该函数的对象。但是这一步是编译器进行的用户不需要去管,这也是this对于用户的好地方。 我们通过以下实

qq_61273847的博客 1081

LTC3783 LED驱动控制器设计与效率优化详解

开关电源控制器是现代LED照明的核心器件,通过电流模式控制实现高效能量转换。其核心原理是通过采样电阻检测负载电流,配合误差放大器形成闭环调节,在汽车电子、显示背光等场景中确保±3%的电流精度。LTC3783作为典型代表,集成升压/降压-升压多拓扑支持,配合PWM调光技术可实现3000:1的无色偏调光范围。在工程实践中,需重点考量功率电感选型、MOSFET开关损耗与热管理设计,例如在38W功率方案中采用10μH/5A电感和4.5mΩ MOSFET可达成95%效率。该方案特别适用于需要应对9-36V宽输入电压波

weixin_36231030的博客 397

C++中的this和*this

C++中的this和*this this指针 首先,this指针的使用范围是在类里面,因为类的成员函数可以访问类的数据,那么当我们一个成员函数传进去是一个类的时候,this指针就可以很明显的区分我们操作的是那一个数据了。 看一个例子: 我们建一个类A,里面有一个int的成员变量,还有一个compare成员函数,传入一个类A,比较他们成员变量的大小。 class A{ public: A(i...

github_38384969的博客 2万+

后向投影算法(BPA)-SAR成像算法系列(二)

SAR成像算法:后向投影算法(BPA)原理介绍及实现步骤解析。

yjh_2019的博客 1万+

【系统分析师】高分论文:论软件开发方法及应用(数据中心CMDB 系统)

【摘要】本文以作者负责的"数据中心CMDB系统"建设项目为例,探讨了系统分析和建模方法在IT项目中的应用实践。项目基于ITIL框架,旨在整合分散的配置信息,构建统一CMDB平台。通过分析结构化、面向对象和构件化三种开发方法特点,项目最终采用结构化分析与V模型结合的方式,并融入面向对象设计理念。系统经过4个月开发后上线,通过增量迭代满足不同数据源接口需求,采用适配器模式提高兼容性。经过2个月试点运行和优化,系统已稳定运行并获得用户认可,为后续IT服务管理集成奠定了基础。项目实施使作者积累了

数据知道的博客 4298

C++中的This指针

一、This指针的介绍     C++中使用This指针来指向用来调用成员函数的对象。一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的时候也是加上this的,它作为非静态成员函

u012103747的专栏 2880

ESP8266开发之旅 基础篇① 走进ESP8266的世界

    欢迎大家来到ESP8266的世界,从现在开始,笔者将带领大家慢慢揭开ESP8266神秘的面纱。 1. 简介     从笔者的角度来说,ESP8266这个词可以理解为ESP8266EX芯片(当然,后面也有可能出现了其他芯片,这里首推ESP8266EX)以及依赖ESP8266EX芯片开发的系列模组的简称。     ESP8266EX是由乐鑫信息科技公司(Espressif)出品的一款应用于物联...

单片机菜鸟哥的博客 15万+

C++中的this指针

this指针的概念: this指针是类的指针,指向对象的首地址。 this实际上是成员函数的一个形参,在调用成员函数时将对象的地址作为实参传递给this。所以this指针只能在成员函数中使用,在静态成员函数中不能用this。 this指针只有在成员函数中才有定义,且存储位置会因编译器不同有不同存储位置。 在 C++ 中,每一个对象都能通过this指针来访问自己的地址。this指针是所...

gehulushang的博客 1439

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

理解C++中的this指针

突然感觉this指针在C++中太常见了,但是从来没有很仔细的去思考过这个东西,(也可能是思考过但是忘了,没错,脑子就是这么不好用),所以来记录一下。 参考博客: https://www.cnblogs.com/duwenxing/p/7410687.html 一、什么是this指针 思考:C++是如何给一个类对象分配内存的?看如下代码: #include <iostream> using namespace std; class Student { public: void

Arcobaleno 1093

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

浅析C++中的this指针

     有下面的一个简单的类:class CNullPointCall{public:    static void Test1();    void Test2();    void Test3(int iTest);    void Test4();private:    static int m_iStatic;    int m_iTest;};int CNullPointCal

寒星轩 6万+

C++中的this

C++中的this指针学习记录

janke114的博客 590
上一篇: c++中的THIS
下一篇: 通用对话框类的数据成员
deepfuture
博客等级 码龄17年 210粉丝 1287原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值