前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >string容器01之基本概念

string容器01之基本概念

作者头像
大忽悠爱学习
发布2021-03-02 16:50:03
发布2021-03-02 16:50:03
29900
代码可运行
举报
文章被收录于专栏:c++与qt学习c++与qt学习
运行总次数:0
代码可运行

本质:string是c++风格字符串,而string本质是一个类 string和char*区别:

  • char*是一个指针
  • string是一个类,内部封装了char*,管理这个字符串,是一个char*型容器

特点:

  • string内部封装了很多成员函数:查找find,拷贝copy,删除delete,替换replace,插入insert…
  • string管理char*所分配的内存,不用担心复制越界和取值越界等,由内内部进行负责

string构造函数

  • 构造函数原型:
  • string() 创建一个空字符串
  • string(const char* s) 利用字符串s进行初始化
  • string(const string& s)使用一个string对象初始化另一个对象
  • string(n,c)使用n个字符c进行初始化
代码语言:javascript
代码运行次数:0
复制
#include<iostream>
using namespace std;
//string的构造函数
void test() 
{
	string s1; //string的默认构造函数
	const char* s = "大忽悠";
	//const char* 和char* const的区别
	//	char greeting[] = "Hello";
	//char* const p = greeting;              //指针p是常量指针,即不可再次赋值,永远指向greeting。可以通过p改变greeting的值
	//const char* p = greeting;              //不可以通过指针p改变指向对象greeting的值,但是可以改变指向。一般用在函数传参上。
	string s2(s);
	cout << s2 << endl;
	string s3(s2);
	cout << s3 << endl;
	string s4(5, 'a');
	cout << s4 << endl;

}
int main()
{
	test();
	system("pause");
	return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/02/08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档