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

关于string类的构造函数

一、string(const char* s, size_type n, const Allocator & a=Allocator());
这个构造函数接受一个C风格字符串,并指定复制这个C风格字符串的n个字符作为该string对象的内部数据成员;
这里就是需要注意一下,当n大于s的长度的时候,string对象会继续获取s后面的内存区域的值,所以这里调用该string的size()方法的时候会返回n;

二、string(const string & st, size_type pos, size_type n, const Allocator & a=Allocator());
这个构造函数接收一个string对象的引用,为了方便起见,这里将pos参数设置为0,如果n大于st的长度的时候,string对象只会获取到st长度的数据,不会继续往后面的内存区获取数据,所以该string对象的size()方法返回n和st.size()较小的那个;

代码:

#include <iostream>
#include <string>int main()
{using namespace std;string s1("manba");string s2("manba", 100);string s3(s1, 0, 100);cout << "size of s1: " << s1.size() << endl;cout << "size of s2: " << s2.size() << endl;cout << "size of s3: " << s3.size() << endl;return 0;
}

结果:

size of s1: 5
size of s2: 100
size of s3: 5

相关文章:

  • 基于 jQuery 实现灵活可配置的输入框验证功能
  • 效整理文件信息!一键生成文件夹目录的工具
  • 简单理解MCP:AI如何使用工具
  • 开元类双端互动组件部署实战全流程教程(第1部分:环境与搭建)
  • 网络:cookie和session
  • 使用汇率查询API帮你实时查询汇率,促进货币交流
  • GPU性能加速的隐藏魔法:Dual-Issue Warp Schedule全解析
  • 游戏开发的TypeScript(5)TypeScript的类型转换
  • ciscn_2019_c_1
  • 2025 年 408 真题及答案
  • wordperss AI插件:AI图文+视频+长尾关键词自动生成,已内置deepseek、kimi全模型,支持简单一键接入更多自定义API
  • 数据集-目标检测系列- 牙刷 检测数据集 toothbrush >> DataBall
  • Cadence高速系统设计流程及工具使用
  • WidowX-250s 机械臂的简单数字孪生案例
  • 2025.5.4总结
  • 【信息系统项目管理师-论文真题】2007下半年论文详解(包括解题思路和写作要点)
  • 【信息系统项目管理师-论文真题】2008上半年论文详解(包括解题思路和写作要点)
  • TS 交叉类型
  • linux stm32mp157 GIC-V2 中断处理过程分析
  • Latex——英文破折号
  • 为什么有的人闻到烟味,会咳嗽、胸闷?别再伤害身边的人
  • 中年人多活动有助预防阿尔茨海默病
  • 新质观察|“模速空间”如何成为“模范空间”
  • 贵州黔西市游船倾覆事故发生后,多家保险公司紧急响应
  • 库里22分赢下抢七大战,火箭10年难破“火勇大战”的魔咒
  • 人民日报头版:让青春之花绽放在祖国和人民最需要的地方