• 标准库 string类型和字符串字面值


    1.标准库 string类型

    string类型支持长度可变的字符串,C++标准库将负责管理与存储字符相关的内存,以及提供各种有用的操作。标准string类型的目的就是满足对字符串的一般应用。

    与其他的标准库类型一样,用户程序要是string类型对象,必须包含相关头文件。如果提供了合适的using声明,那么编写出来的程序将会变得简短些;

    #include <string>
    using std::string

    2.string 对象的定义和初始化
    构造函数是一个特殊成员函数,定义如何初始化该类型的对象。下表中列出几个string类型常用的构造函数。当没有明确指定对象初始化时,系统将使用默认函数。

    几种初始化string对象的方式
    string s1; 默认构造函数s1 为空串  
    string s2(s1); 将s2 初始化s1的一个副本
    string s3("value"); 将 s3 初始化为一个字符串字面值副本
    string s4(n,'c'): 将 s4 初始化为字符‘c’的 n 个副本 

    警告:因为历史原因以及C语言兼容,字符串面值与标准库 string 类型不是同一种类型。这一点很容易引起混乱,编程时一定要注意区分字符串字面值和string数据类型的使用。

    什么是默认构造函数?

    答:默认构造函数(default constructor)就是在没有显示提供初始化式调用的构造函数。它由不带参数的构造函数,或者为所有形参提供默认实参的构造函数定义。如果定义某个类的变量时没有提供初始化,就会使用默认构造函数。

    如果用户定义类中没有显式定义任何构造函数,编译器就会自动为该类生成默认构造函数,称为合成的默认构造函数。

  • 相关阅读:
    函数的调用惯例
    docker 强制删除镜像
    docker 安装 tomcat8
    阿里云 maven仓库地址配置
    ubuntu 18.04 安装搜狗输入法
    centos 监控进程,并自动重启
    intellj idea show "run dashboard" panel
    Centos7 服务器启动jar包
    maven centos7 环境变量
    linux关于IP,端口,防火墙相关命令
  • 原文地址:https://www.cnblogs.com/canyuexingchen/p/2631985.html
Copyright © 2020-2023  润新知