全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C+ Primer 第03章学习笔记第03章:标准库类型C+还定义了一个内容丰富的抽象数据类型标准库,其中最重要的标准库类型是string和vector,它们分别定义了大小可变的字符串和集合。另一种标准库类型bitset提供了一种抽象方法来操作位集合。第一节:命名空间using声明 学习摘录024:一旦使用了using声明,我们就可以直接引用名字,而不需要再引用该名字的命名空间:/ using declaration states our intent to use these names from the namespace std.using std:cin;using std:string; 学习摘录025:如果在头文件中放置using声明,就相当于在包含该文件的每个程序中都放置了同一个using声明,不论该程序是否需要using声明。摘录有想025:我想这相当于全局变量跟局部变量的作用吧。 学习摘录026:通常头文件中应该只定义确实必要的东西。请养成这个习惯。摘录有想026:书上建议少用using namespace std 这样的风格,以后写程序就尽量用using声明吧,少用using编译指令。第二节:标准库string类型 学习摘录027:string操作s.empty() / 检查字符是否为空,bool类型s.size(); / 返回s中字符的个数sn; /返回s中位置为n的字符,位置从0开始计数摘录有想027:以前还不知道原来有empty()这一操作,初见empty还以为要清空这个对象的数据呢,其实不然,是检查字符串是否为空。If(s.empty() / ok, empty 学习摘录028:size操作返回的是string:size_type类型的值。String类类型和许多其他库类型都定义了一些配套类型(companion type)。通过这些配套类型,库类型的使用就能与机器无关(machine-independent)。Size_type就是这些配套类型中的一种。它定义为unsigned型(unsigned int 或unsigned long)具有相同的含义,而且可以保证足够大能够存储任意string对象的长度。摘录有想028:写程序时不要把size的返回值赋给一个int变量了。 学习摘录029:如在有16位int型的机器上,int类型变量最大只能表示32767个字符的string对象,而能容纳一个文件内容的string对象轻易就会超过这个数字。因此,为了避免溢出,保存一个string对象size的最安全的方法就是使用标准库类型string:size_type 学习摘录030:string对象比较操作是区分大小写的,即同一个字符的大小写形式被认为是两个不同的字符。在多数计算机上,大写的字母位于小写字母之前;任何一个大写字母都小于任意的小写字母。摘录有想030:在比较时需注意大小写了,想起以前cctype有一个用于转换字符的函数,把大写转为小写之类的功能可以很容易实现。 学习摘录031:string类型通过下标操作符()来访问string对象中的单个字符。下标操作符需要一个size_type类型的值,来标明要访问字符的位置。这个下标中的值通常被称为“下标”或“索引(index)”。 学习摘录032:string对象的下标从0开始,而ss.size() 1则表示s的最后一个字符。第三节:标准库vector类型 学习摘录033:虽然可以对给定元素个数的vector对象预先分配内存,但更有效的方法是先初始化一个空vector对象,然后再动态地增加元素。 学习摘录034:C+程序员习惯于优先选用!=而不是来编写循环判断条件。 学习摘录035:我们倾向于在每次循环中测试size的当前值,而不是进入循环前,存储size值的副本。调用size成员而不保存它返回的值,这反映了一种良好的编程习惯。摘录有想035:以后在使用for时,可以注意一下这个问题了。第四节:迭代器简介。 学习摘录036:迭代器是一种检查容器内元素并遍历元素的数据类型。若一种类型支持一组确定的操作(这些操作可用来遍历容器内的元素并访问这些元素的值),我们就称这种类型为迭代器。 学习摘录037:vector:iterator iter = ivec.begin();由end操作返回的迭代器指向vector的“末端元素的下一个”,通常称为超出未端迭代器(off-the-end iterator),表明它指向了一个不存在的元素。如果vector为空,begin返回迭代器与end返回的迭代器相同。 学习摘录038:由end操作返回的迭代器并不指向vector中任何实际的元素,相反,它只是起一个哨兵(sentinel)的作用,表示我们已经处理完vector中所有的元素。 学习摘录039:迭代器类型可以使用解引用操作符(*操作符)来访问迭代器所指向的元素:*iter = 0;由于end返回的迭代器不指向任何元素,因此不能对它进行解引
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 园林古建筑景观雕塑与艺术装置施工方案
- 地下建筑防水施工技术措施方案
- 电气设备安装施工技术方案
- 钢结构重型钢梁吊装技术方案
- 钢结构施工工艺风险管控技术方案
- 2026南平松溪县湛云项目管理有限公司招聘4人考试备考试题及答案解析
- 2026皖南医学院第一附属医院(弋矶山医院)招聘预(安徽)考试备考试题及答案解析
- 混凝土楼板浇筑温控方案
- 中学教室地面加固施工方案
- 砌体结构施工中的混凝土接缝处理方案
- 2025中国东方资产管理股份有限公司总部部门分公司高级管理人员社会招聘笔试历年典型考题及考点剖析附带答案详解2套试卷
- 2026春统编版二年级下册道德与法治教学设计(附目录)
- 2026石嘴山市能达建设发展有限公司招聘3人笔试参考题库及答案解析
- 2026年春人教版八年级下册英语Unit 1~Unit 8全册教案
- 2025-2026学年人教PEP版(新教材)小学英语三年级下册教学计划及进度表
- 2026年-(教科版2026新教材)科学一年级下册全册教学设计-新版
- 2026届云南省普通高中学业水平选择性考试调研测试政治试题
- GB/T 20839-2025智能运输系统通用术语
- 2026年就业市场:挑战与机遇并存高校毕业生就业指导与策略
- 多囊卵巢综合征中西医结合诊疗指南(2025年版)
- 电梯安装安全培训讲议课件
评论
0/150
提交评论