标准库 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)就是在没有显示提供初始化式调用的构造函数。它由不带参数的构造函数,或者为所有形参提供默认实参的构造函数定义。如果定义某个类的变量时没有提供初始化,就会使用默认构造函数。

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

转载于:https://www.cnblogs.com/canyuexingchen/archive/2012/08/10/2631985.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值