【C++学习笔记】:对象指针
创始人
2025-05-28 19:32:12

C++指向对象的指针

C++建立对象时,编译系统会为每一个对象分配一定存储空间,让存放其成员。对象空间的起始地址就是对象的指针,可以定义一个指针变量,用来存放对象的指针。

定义指向类对象的指针变量的一般形式为 

类名 * 对象指针名;

可以通过对象指针访问对象和对象的成员

C++指向对象成员的指针

在C++中,对象是有地址的,存放对象初始地址的指针变量就是指向对象的指针变量,对象中的成员也有地址,存放对象成员地址的指针变量就是指向对象成员的指针变量。

1、指向对象数据成员的指针 

定义指向对象数据成员的指针变量的方法和定义指向普通变量的指针变量方法相同。

数据的指针变量 定义指向对象数据成员的指针变量的一般形式为 

数据类型名 *指针变量名;

2、指向对象成员函数的指针 

C++定义指向对象成员函数的指针变量的方法,与定义指向普通函数的指针变量方法有所不同。 

成员函数与普通函数有一个最大的区别:成员函数是类中的一个成员。

定义指向公用成员函数的指针变量的一般形式为 

数据类型名 (类名∷*指针变量名)(参数表列);

指针变量指向一个公用成员函数的一般形式为 

指针变量名=&类名∷成员函数名;

案例:C++对象指针的使用

#include 
using namespace std;
class Time
{
  public:Time(int,int,int);
  int hour,minute,second;
  void getTime(); //声明成员函数
};
Time::Time(int h,int m,int s)
{
  hour=h;
  minute=m;
  second=s;
}
void Time::getTime()//定义成员函数
{
  cout< }
int main( )// 程序的主函数
{
  Time time(20,22,45); //定义Time类对象time
  time.getTime(); //调用函数
// 定义指向整型数据的指针变量point,并指向time.hour
  int *point=&time.hour;
  cout<<*point<   return 0;
}

编译运行结果:

20点22分45秒
20

--------------------------------
Process exited after 0.07195 seconds with return value 0
请按任意键继续. . .

相关内容

热门资讯

普通人如何用AI帮你干活——娱... 案例描述:一天朋友突然发信息跟我说:看你朋友全最近总在显摆AI作画&#x...
Linux虚拟机磁盘扩容、Do... 文章目录虚拟机扩容1、外部配置2、具体扩容步骤3、扩容后效果Docker容器磁盘满的情况意外情况使用...
关于 GC 关于GC GC的触发时机 YGC 当Eden区空间不足时,就会触发YGC;...
ORBSLAM3 --- 检测... 目录 1.函数作用 2.调用代码解析 3.LoopClosing::DetectAndReffin...
异常体系介绍 1、什么是异常 异常:表示程序出现的问题 误区:不是让我们以后不出现异常...
buu(前三页第二弹) RSA... buu [ACTF新生赛2020]crypto-rsa3 1 题目描述: from ...
记一次七牛云存储文件MOV转M... 经过 我们最近的一次开发过程中,发现存在如下一个问题:iOS上传的视频是...
list接口介绍 list部分接口介绍 文章目录list部分接口介绍resizeeraseoperation系列接口r...
Spring的那些开发小技巧(... BeanPostProcessorBeanPostProcessor,中文名 Bean...
谈Linux中的硬链接和软链接 前言:在Linux中内存的存储方式和Windows下不太一样,对于学Li...
Struts2 001 0x00 前言 针对Struts2 系列漏洞进行记录,之前可能零零散散的看了一下&#x...
【spring】@Compon... 1.四个注解的作用是一样的 2.@Controller、@Service、@...
GDKOI2023 普及组游记 DAY 0 上午照常上whk,下午才出发。 下午本来说是3点半校门集合,...
uni-app:购物车页面--... 把结算区域封装为组件 在 components 目录中,新建 my-settle 结算...
A.构造(牛客挑战赛) A.构造一、问题二、分析三、代码 一、问题 二、分析 我们只需要以中间作为分割点,一...
springboot+jsp基... 经过近期对 java 面向对象程序设计、前端知识以及JAVA springboot框架的掌握和学习&...
HTML语言 1.什么是HTML? 1、HTML是超文本标记语言(Hyper Text...
【MySQL】MySQL的事务 目录 概念 什么是事务?  理解事务 事务操作 事务的特性 事务的隔离级别  事务的隔离级别-操作 ...
测试管理之路 —— 如何优化测...   😏作者简介:博主是一位测试管理者,同时也是一名对...
底层原理计划--MySQL Mysql 存储引擎:mylsam/Innob/memoery…. Show engi...
文献阅读(49)—— 基于Tr... 文献阅读(49)—— 基于Transformer青光眼预测 文章目录文献...
你是真的“C”——实用memo... 你是真的“C”——各种实用memory类库函数的详细实现过程😎前言🙌...
[linux] Linux中环... 学校的服务器信息如下命令可以查询: cat /etc/redhat-release ...
计算机底层:奇偶校验码 计算机底层:奇偶校验码校验码的作用:在数据传输或存储时,可...
JavaWeb——urlPat... 1.一个Servlet配置多个访问路径  在WebServlet的配置里面urlPattern的类型...
指针 指针数组 数组指针 二级... 一、本文研究: 指针数组 与 二级指针 数组 与 数组指针 上面的两两一对࿰...
Ubuntu20 + KVM虚... 1 命令汇总 # 查看一下linux是32位还是64位:file /bin/ls # ...
Spring Boot 整合 ... Spring Boot 整合 RabbitMQ 多种消息模式 准备工作集成 RabbitMQ发布/订...
【BEV】TPVFormer复... 1. 前言 在环视图像的网络中,常使用鸟瞰图来进行特征提取,尽管比体素表...
华测RTK参数/华测GPS/华... 1.i93 视觉RTK华测导航i93视觉RTK是集成了华测目前新型视觉技术的一款革新型视觉RTK产品...