c++初阶--string类(使用)

大家好,许久不见,今天我们来学习c++中的string类,在这一部分,我们首先应该学习一下string类的用法,然后再试着自己去实现一下string类。

在这里,我使用的是这个网站来查找的string类,这里面的内容比较全面,很适合我们查找一些东西,

那么我们现在就来看一下string类的使用:

1. string类的使用
1.1 构造函数

对于构造函数来说,有一共有七个构造函数

其中主要使用的有以下几种:

s1使用的是无参的构造函数,结果是空指针,s2是复制n个给定字符结果是ssssssssss,s3是拷贝构造函数,结果和s2相同,s4是使用字符串进行初始化,s5是对字符串的某个区间截取后初始化,s6是以字符串的头到第n个字符进行初始化。

析构函数这里没什么好说的,就先跳过了。

1.2 赋值重载

下面是重载的=运算符的使用方法:

这里共有三种方法,其中有使用字符赋值的,字符串赋值和string类对象进行赋值的。下面就是这三种的例子: 

 看完了这些,我们接下来学习一个新的知识,迭代器。

1.3 迭代器

迭代器是属于类的,在使用的时候要使用访问限定符。

这是有关迭代器的几个函数,随后我们来学习。

迭代器可以用来遍历对象,用来打印对象的内容。在使用的时候要使用访问限定符,其中s4.begin()表示的是s4的第一个位置,s4.end()表示的是s4的最后一个位置的下一位,在表示位置时,不将字符串末尾的 '\0'计算进去,所以end()表示的就是'\0'的位置,当it++时,就会跳到下一个位置。而rbegin和rend时反向迭代器,也就是将begin和end的位置进行了交换,在使用时与前者时一样的。

迭代器同样可以用来修改字符串内容,而对于下面的四个函数,表示const内容的迭代器,也可以对普通内容使用,但它不能用于修改它指向的内容,即是对象本身不是 const。

1.4 string中与空间有关的函数

接下来我们来看几个与空间有关的函数

我们首先来看这四个简单的函数:

 

size和length都表示字符串的长度,没有区别 ,capacity表示的是字符串能存储的字符个数,max_size表示的是字符串的最大长度,与空间无关,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/896789.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

mysql--基本查询

目录 搞定mysql--CURD操作,细节比较多,不难,贵在多多练 1、Create--创建 (1)单行插入 / 全列插入 (2)插入否则替换 (3)替换 2、Retuieve--select 1)全…

Android系統Audio hal

一.Android系統Audio hal简介 Android系统的音频硬件抽象层(HAL)是系统与硬件之间的桥梁,允许音频应用和服务访问底层音频硬件,而无需直接与硬件交互。 主要组件: 音频 HAL 接口:定义了应用和服务如何调用音频硬件的规范。典型的音频操作包括播放、录制、音量控制等。 …

day5:权限管理

一,权限概述 什么是权限 合适的人干合适的事情 权限的作用 根据用户的等级,分配对应的权利,完成不同用户对不同资源的相关操作。 权限的分类 r(4)读w(2)写x(1)执行 …

深入理解Agent:从0实现function call

Function的调用时Agent实现很重要的一步,只有 理解了function call这个原理才可以更好的创建Agent。 我将不使用任何langchain等框架或者coze等平台,从0开始构建一个可以调用function的Agent。 源代码已经上传github:https://github.com/as…

美摄科技云服务解决方案,方案成熟,接入简单

美摄科技作为视频处理领域的先锋,凭借其强大的技术实力和深厚的行业经验,推出了成熟的云服务解决方案,为轻量化视频制作开辟了全新的道路。 一、成熟方案,接入无忧 美摄科技云服务解决方案的最大亮点在于其成熟度和易用性。我们…

(六) 进程控制

(六) 进程控制 ps(1) 命令可以帮助我们分析本章中的一些示例,所以简单介绍一些参数的组合方式,更详细的信息请查阅 man 手册。 ps axf 主要用于查看当前系统中进程的 PID 以及执行终端(tty)和状态等信息,更重要的是它能显示出进程的父子关系…

WSL2 构建Ubuntu系统-轻量级AI运行环境

环境:Win11 软件:WSL2 安装环境:Ubuntu 22.04 检查电脑是否开启虚拟化 打开:任务管理器->性能->CPU CPU 开启虚拟化(通常默认是开启的,如果没有开启需要BIOS开启) 虚拟化设置&#xff0…

uni-app 扫码插件推荐:基于支付宝 mPaaS 扫码组件开发,支持 Android 和 iOS

一. 前言 之前说到,我的一个 uni-app 项目遭到用户吐槽:“你们这个 App 扫码的正确率太低了,尤其是安卓的设备。经常性的扫码扫不出来,就算是扫出来了,也是错误的结果!” 面对以上这个问题,我…

Vert.x,认证与授权 - HTTP基本认证

几乎所有的线上系统都离不开认证和授权,Vert.x auth相关组件提供了丰富(Session,JTW, OAuth,…),便捷的认证和授权支持。 当前,使用最多是Web应用,所以在后续讨论中,都是关于Vert.x auth在Web应…

【大数据分析与挖掘模型】matlab实现——非线性回归预测模型

一、实验目的 掌握有关非线性回归的理论知识,通过变量代换把本来应该用非线性回归处理的问题近似转化为线性回归问题,并进行分析预测。 二、实验任务 对非线性回归实例进行编码计算,实例如下: 三、实验过程 1.运行非线性回归中…

【TFR-Net】基于transformer重建网络

abstract: 提高对数据缺失的鲁棒性已经成为多模态情感分析(MSA)的核心挑战之一,MSA旨在从语言、视觉和声学信号中判断说话者的情感。在目前的研究中,针对不完全模态特征的MSA,提出了基于平移的方法和张量正…

Unity-Editor扩展,引擎管理AudioClip,音乐音效快捷播放功能

目录 选择一个Audio 音频文件即会 关键在于三个快捷模式 播放, 自动播放 循环播放 根本不需要Editor扩展开发 没找到虚幻引擎的audio 的管理是怎么样的 参考: 本来,觉得没有快捷方式,播放很不爽 想自定义搞一个&#xff…

全面了解 NGINX 的负载均衡算法

NGINX 提供多种负载均衡方法,以应对不同的流量分发需求。常用的算法包括:最少连接、最短时间、通用哈希、随机算法和 IP 哈希。这些负载均衡算法都通过独立指令来定义,每种算法都有其独特的应用场景。 以下负载均衡方法(IP 哈希除…

aws 把vpc残留删除干净

最近忘了把vpc 删干净导致又被收了冤大头钱 在删除vpc 的收发现又eni在使用,但是忘了是哪个资源在占用 先用命令行把占用的资源找出来停掉 使用 AWS 命令行界面(CLI)来查看 VPC 的使用情况 列出子网: aws ec2 describe-subnets …

【Java】常用方法合集

以 DemoVo 为实体 import lombok.Data; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;Data ExcelIgnoreUnannotated public class ExportPromoteUnitResult {private String id;ExcelProperty(value &qu…

数据结构6——树与二叉树

在本专栏的前五篇中,我们学习了顺序表、链表、栈和队列,他们本质上都是线性表。有线性表就存在非线性表,现在我们就来学习一下结构更复杂的非线性表——树。 1. 树的概念与结构 1.1 树的概念 树是一种非线性的数据结构,它是由n&…

Go语言Gin框架的常规配置和查询数据返回json示例

文章目录 路由文件分组查询数据库并返回jsonservice层controller路由运行效果 启动多个服务 在 上一篇文章《使用Go语言的gorm框架查询数据库并分页导出到Excel实例》 中主要给大家分享了较多数据的时候如何使用go分页导出多个Excel文件并合并的实现方案,这一篇文章…

Linux之远程连接服务器

远程连接服务器的类型 文字接口 明文传输:Telnet 23、RSH等,目前非常少用; 加密传输:SSH为主,已经取代明文传输 ssh提供两个服务器功能:1.类似于telnet;2.类似于ftp的sftp-serve…

特斯拉自动驾驶出租车计划变成泡影?联想与Meta合作,推出面向PC的个人AI智能体AI Now|AI日报

文章推荐 Swarms Corporation创始人Kye Gomez实锤OpenAI多智能体Swarm抄袭其成果!|AI日报 今日热点 中国海油“海能”人工智能模型正式发布 近日,由中国海油与中国电信、科大讯飞等企业合作打造“海能”人工智能模型正式推出。 中国海油“…

Centos7搭建minio对象存储服务器

Centos7搭建minio对象存储服务器 安装二进制程序配置服务文件 安装二进制程序 参考:https://segmentfault.com/q/1010000042181876 minio中国版:https://www.minio.org.cn/download.shtml#/linux # 下载二进制程序 wget https://dl.min.io/server/min…