C++ Primer 成员访问运算符

devtools/2025/2/8 19:31:28/

欢迎阅读我的 【C++Primer】专栏

专栏简介:本专栏主要面向C++初学者,解释C++的一些基本概念和基础语言特性,涉及C++标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级程序设计技术。希望对读者有帮助!

在这里插入图片描述
在这里插入图片描述

目录

4.6“成员访问运算符

点运算符和箭头运算符都可用于访问成员,其中,点运算符获取类对象的一个成员;箭头运算符与点运算符有关,表达式pt->mem等价于(*ptr).mem:

strtng s1="astring",*p=g&s1;
auto n=s1.size(); //运行string对象s1的size成员
n = (*p).size();  //运行p所指对象的size成员
p->size();        //等价于(*p).size()

因为解引用运算符的优先级低于点运算符,所以执行解引用运算的子表达式两端必须加上括号。如果没加括号,代码的含义就大不相同了:

//运行p的size成员,然后解引用size的结果
*p.size(); //错误:p是一个指针,它没有名为size的成员

这条表达式试图访问对象p的size成员,但是p本身是一个指针且不包含任何成员,所以上述语句无法通过编译。

箭头运算符作用于一个指针类型的运算对象,结果是一个左值。点运算符分成两种情况:如果成员所属的对象是左值,那么结果是左值;反之,如果成员所属的对象是右值,那么结果是右值。


http://www.ppmy.cn/devtools/157158.html

相关文章

智慧楼宇的监控都用上3D形式了,2D要摒弃了。

在信息技术飞速发展的当下,智慧楼宇作为现代建筑的重要发展方向,其监控系统也在不断升级换代。近年来,3D监控形式在智慧楼宇中逐渐得到广泛应用,引发了关于2D监控是否将被摒弃的讨论。要深入探讨这一问题,需从智慧楼宇…

基于 docker 的mysql 5.7 主主集群搭建

创建挂载目录和配置文件 主节点1 mkdir -p /mysql_master_1/mysql/log mkdir -p /mysql_master_1/mysql/data mkdir -p /mysql_master_1/mysql/conf vim /mysql_master_1/mysql/conf/my.cnf[mysqld] datadir/var/lib/mysql #MySQL 数据库文件存放路径 server_id 1 #指定数据…

基于DeepSeek API和VSCode的自动化网页生成流程

1.创建API key 访问官网DeepSeek ,点击API开放平台。 在开放平台界面左侧点击API keys,进入API keys管理界面,点击创建API key按钮创建API key,名称自定义。 2.下载并安装配置编辑器VSCode 官网Visual Studio Code - Code Editing…

Jenkins 触发构建的几种常见方式

为了实现自动化构建,Jenkins 提供了多种触发构建的方式。这些触发方式可以根据开发团队的需求来选择,使得构建过程更加灵活和高效。 1. 手动触发构建 手动触发构建是最简单的一种方式,通常用于开发人员或管理员手动启动构建任务。 步骤: 登录 Jenkins 后,进入某个项目(…

【图像处理】-不同的图像存储格式

看到了前面的基础操作介绍,我们再了解一下不同图像的存储格式,更有利于我们理解图像处理的原理。 图像存储格式详细介绍 1. BMP(BitMap Picture) 发展历史 BMP是一种位图文件格式,由微软公司于1986年推出。它最初是…

用deepseek制作我的第一个长视频---使用AI解决尝试新领域没有经验拖延的问题!

(由于技术原因,联网搜索暂不可用) 制作一个高质量的Vlog或生活记录长视频,即使零基础也能通过系统规划实现!以下是为你定制的「从零到成品」全流程指南,结合叙事逻辑、剪辑技巧和效率工具,帮你…

快速优雅解决webview_flutter不能Safari调试的问题

这个问题,网上一搜,又是让你去检索WKWebView,找到FWFWebViewHostApi.m文件,然后再改 iOS 的代码, 加一行 self.inspectable YES; 我们开发Flutter项目,尽量还是不要去改插件里的代码,好了不费…

朝天椒USB服务器在湖南电力的应用案例

湖南电力作为能源行业的领军企业,在日常运营中需要处理大量的财务和资金交易。随着业务的不断增长,银企直连成为其提高资金流转效率和安全性的重要手段。然而,在银企直连场景中,银行U盾的网络连接问题一直是困扰企业的技术难题。为…