首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【C++指南】string(一):string从入门到掌握

    本文将深入探讨 C++ 中string的奥秘,从其产生的根源basic_string模板类开始,逐步介绍std::string、wstring、u16string和u32string等相关类型,揭示它们之间的关系...(二)basic_string 类模板剖析 下面这张图可以直观的表示 C++中string的关系 basic_string是一个类模板,其定义位于string>头文件中 它的模板参数主要有三个: CharT...的: string 家族成员:std::string、wstring、u16string 和 u32string std::string、wstring、u16string 和 u32string都是基于...basic_string这个类模板实例化的不同的模板类 (一)std::string:最常用的字符串类型 std::string是basic_string的特化,它是 C++ 中最常用的字符串类型...从basic_string模板类的基础,到std::string、wstring、u16string和u32string等具体类型的应用,以及它们与std库的紧密联系,再到basic_string丰富的函数功能

    47821

    从String的intern()到常量池

    但是String有些特殊,通过new String(string)生成的两个同值的字符串地址就不相等,用其他方式来生成的两个同值字符串地址就相等。...如图,在堆中会在常量池中创建一个名为original的新字符串,然后拷贝并在堆中生成一个新字符串。注释中也提到,除非你需要一个字符串的显式副本,否则不需要使用这个构造函数,因为字符串是不可变的。...intern()从字符串池中获取的是常量池中str1的abc引用。 第二部分:str3通过char[]在堆中创建了字符串,不是在常量池,所以gh的引用不会自动放入字符串池。...intern()从字符串池中获取的是常量池中str4的gh引用。...intern()从字符串池中获取的是堆中str3的gh引用。 从上面的代码中也得出结论:intern()可以将堆中创建的且字符串池没有等值引用的字符串引用放入字符串池。

    33420

    从陌生到熟练使用string类

    个人主页: :✨✨✨初阶牛✨✨✨ 推荐专栏1: C语言初阶 推荐专栏2: C语言进阶 个人信条: 知行合一 本篇简介:>:讲解C++中有关string类的使用,从构造函数到容量操作,到遍历以及增删查改和最后的运算符重载...构造函数使用演示: void test1() { //无参构造 string(); string s1; cout << "s1= " << s1 << endl; //拷贝构造, string...string substr (size_t pos = 0, size_t len = npos) const:从pos往后len个字符,返回这段被切割的字符串的副本. void test6() {...= s3.find(".com"); string s4, s5, s6; s4 = s3.substr(0, pos1-1); //从0位置开始,往后pos-1个字符 s5 = s3.substr...string类的使用还是需要多多练习,可以试着写一下相关的oj题练一下手,后续会模拟实现string类,加深对string类的理解. string相关习题1 今天就讲到这里了,我们下次模拟实现见.

    24810
    领券