- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1. STL介绍
1.1. 关于STL
想当初 ,C++语言刚推出时 ,感觉是比C语言多了好多概念 ,但和使用C一样 ,数组、队列和字符串的操
作 ,都需要自己写程序来处理。 ,自从STL (标准模版库 ,Standard Template Library)推出后 ,使C++的标
准库从功能上前进了一大步 ,给使用复杂数据结构操作的程序员 ,提供了很大的方便。如果说STL是C++的
利器 ,是很恰当的。每个使用C++编程的人 ,都应该掌握这项技术。
STL是比较复杂的 ,功能十分强大 ,提供了大量的函数 ,使入门的难度有些高。如果从掌握STL的基本使用
方法入手 ,在自己的编程应用中逐步使用STL功能 ,就不觉得STL难以掌握了。熟悉了STL ,就会感觉到它
的好处。STL有以下的一些优点 :
∙ 调试程序时更加安全和方便 ;
∙ STL是跨平台的;
∙ 可以很容易地实现搜索或对排序等一系列的算法。
1.2. 基本术语
模板 (Template )——泛型化的类 ,或叫类的宏(macro )。
容器 (Container )——可容纳数据的模板类。STL中有vector ,string ,set ,map ,multimap和deque等容
器。
迭代器 (Iterator )——类似一个指针 ,用来指向STL容器中的元素。
1.3. 容器特点
STL中,提供了多种容器 ,每个容器都有自己的适用范围,本文只介绍最常用的两种容器string和vector。
string是只能容纳字符的容器 ,vector可以容纳各种类型的数据 ,相当于可变长的数组。
1.1. 头文件
在使用string和vector前 ,必须先包含头文件 ,但STL的头文件不包含.h后缀 ,这点要注意。
头文件的说明格式是 :
#include string
#include vector
1.2. 命名空间
STL的命名空间可以使用using namespace std来声明,也可以不使用 ,两种使用方法的区别如下。
l 使用using namespace std
using namespace std;
string strZqdm;
vector int vErrCode ;
l 不使用using namespace std
std::string strZqdm;
std::vector int vErrCode ;
2. string的使用方法
string是一个保存字符序列的容器 ,除了有字符串操作的功能外 ,还有容器的操作功能。要列出并说明这些
功能 ,需要太多的篇幅 ,这里只说明常用的字符串操作功能。
l 说明和初值 :
string strZqdm ;
string strZqdmJz(600446) ;
string strZqdmZs 000003;
l 串连接 :
可以使用+或+ 连接两个或多个字符串,这些字符串,可以是const char *、char *或string型的。有多个串
时 ,前两个串中必须有一个是string型的。
string strSql, strSel ;
strSel select * ;
strSql strSel+ from + zqk;
strSel+ from + zqk;
下面这句是错误的 :
strSql select *+ from zqk; //错误
必须连接两个char *、const char *型时 ,可以写成 :
strSql string(select *)+ from zqk;
对于两个char *或const char *数据的连接 ,也要有一个先转换为string。如 :
char szSel[] {select *};
char szFrom[] { from zqk};
strSql string(szSel)+szFrom;
l 串替换
把一个串中的子串,替换为另一个串,使用replace()函数 ,第一个参数是替换位置 ,第二参数是替换长
度 ,第三个参数是替换子串。替换串和被替换的子串长度可以不等。
下例把一个串中的YYYYMMDD替换为一个日期串。
int n ;
string strFile .\\QS_YYYYMMDD.dat ;
string strDate 2
您可能关注的文档
- spss教程第三章--相关分析及回归模型的建立及分析.doc
- spss数据库建立.ppt
- SQL Server 2005 创建数据库方法.doc
- SQL Server 2005 中的分区表与索引.doc
- SQL Server 2005_2000 数据维护及优化技巧.pdf
- SQL Server 2008配置和管理平台操作.docx
- SQL Server 2008新建登录名方法步骤.doc
- SQL server2000的使用 数据库的创建及管理.ppt
- SQL Server2000企业管理器-创建数据库与数据表.doc
- SQL 第03篇 Transact-SQL 语言.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)