当前位置: 首页 > news >正文

怎么做能打不开漫画网站河南省新闻联播视频

怎么做能打不开漫画网站,河南省新闻联播视频,网站建设端口,本地论坛一、string类 1、为什么要学习string#xff1f; C语言中#xff0c;字符串是以\0结尾的一些字符的集合#xff0c;为了操作方便#xff0c;C标准库中提供了一些str系列的库函数#xff0c;但是这些库函数与字符串是分离开的#xff0c;不太符合OOP#xff08;面向对象…一、string类 1、为什么要学习string C语言中字符串是以\0结尾的一些字符的集合为了操作方便C标准库中提供了一些str系列的库函数但是这些库函数与字符串是分离开的不太符合OOP面向对象编程的思想而且底层空间需要用户自己管理稍不留神可能还会越界访问。在OJ中有关字符串的题目基本以string类的形式出现而且在常规工作中为了简单、方便、快捷基本都使用string类很少有人去使用C库中的字符串操作函数。 2、介绍 1. 字符串是表示字符序列的类。 2. 标准的字符串类提供了对此类对象的支持其接口类似于标准字符容器的接口但添加了专门用于操作单字节字符字符串的设计特性。 3. string类是使用char(即作为它的字符类型使用它的默认char_traits和分配器类型 4. string类是basic_string模板类的一个实例它使用char来实例化basic_string模板类并用char_traits和allocator作为basic_string的默认参数 5. 注意这个类独立于所使用的编码来处理字节:如果用来处理多字节或变长字符(如UTF-8)的序列这个类的所有成员(如长度或大小)以及它的迭代器将仍然按照字节(而不是实际编码的字符)来操作。 3、特点 1. string是表示字符串的字符串类 2. 该类的接口与常规容器的接口基本相同再添加了一些专门用来操作string的常规操作。 3. string在底层实际是basic_string模板类的别名typedef basic_stringchar, char_traits, allocator string; 4. 不能操作多字节或者变长字符的序列。 5、在使用string类时必须包含#include头文件以及using namespace std; 4、string类常用构造函数 1、string() 构造空的string类对象即空字符串重点 2、string(const char* s) 用C-string来构造string类对象重点 3、string(const strings) 拷贝构造函数重点 4、string(size_t n, char c) string类对象中包含n个字符c //空字符串string test1;//用C-string构造string类对象string test2(hello);//拷贝构造string test3 test1;string test4(test2);//使string对象包含n个字符string test5(5, a); 注意string类是重载了流插入和留提取运算符所以其对象可以直接使用cout和cin 这里只举例常见的构造具体可前往官网查看文档。 5、string类的析构函数 因为string类支持cin所以底层实现是右new操作符动态开辟空间的所以需要析构函数~string()释放但析构函数是自动调用的所以平时可以不管。 6、string类对象的遍历和访问 1、利用流插入运算符重载 2、string类运算符重载了[ ]所以可以用[ ]进行读写注意[ ]重载提供了两个版本有个版本用const修饰了this指针返回值也会const引用所以只可读不能写具体查看文档 int main() {string s1(hello world);//读for (int i 0; i s1.size(); i){cout s1[i] ;}cout endl;//写:字符串逆序int begin 0;int end s1.size() - 1;while (begin end){swap(s1[begin], s1[end]);begin;end--;}cout s1;return 0; } 3、利用迭代器iterator用法像指针 int main() {string s1(hello);string::iterator it s1.begin();while (it ! s1.end()){cout *it ;it;}cout endl;return 0; }这里begin()指向第一个位置end()指向数据内容的后一个位置 因为[ ]只适合部分容器如树形、哈希结构、链式结构等等只能用迭代器迭代器才是容器访问的主流。 知道了迭代器那么容器逆序可以用一个函数模版 reverse(s1.begin(), s1.end()); reverse函数需要左闭右开的区间而迭代器的begin和end刚好满足。 需要注意迭代器的两个写法 4、范围for适用于多种容器相比上述几种方式是最便捷的但底层会替换成迭代器 string s1(hello);for (auto e : s1) {cout e ; } cout endl;
http://www.dnsts.com.cn/news/170513.html

相关文章:

  • 北京seo排名优化网站网络服务时代
  • 型网站建设网页设计师培训方法
  • wordpress网站开发代码wordpress底部跟随按钮怎么做
  • 常平网站建设嘉定品牌网站建设
  • 网站建设公司专业网站费用报价买衣服网站排行榜前十名
  • 商业网站制作价格wordpress添加目录
  • 学校网站制作代码珠海做网站设计有哪些
  • 花店网站建设环境分析如何删掉2345网址导航
  • 免费域名申请网站大全推荐互动平台官网
  • php+mysql网站开发全程实例 于荷云 pdf电子工程师兼职平台
  • 做盗版视频网站成本多少钱社交做的最好的网站有哪些
  • clo3d代做网站江西营销型网站建设
  • 雷诺网站群建设模块化网站开发
  • 网站设计远程培训小视频网站建设
  • 做外贸的经常浏览的三个网站外贸公司取名字大全集
  • 手机制作购物网站网站设计说明书800字
  • 玩家自助充值网站建设html网页代码完整代码
  • 房产中介网站排名建筑单位资质
  • 网站后台怎么添加代码郑州模板建站平台
  • 新东方研学网站那家公司做的企业网站建设案例分析
  • 上海网站建设优化公司上海做网站去哪里
  • 人防工程做资料的网站网站没有做伪静态是什么样子
  • 网站开发不满意网站打开为建设中
  • 12306网站是学生做的wordpress 优酷通用代码自适应
  • 新闻稿件东莞关键字排名优化
  • 可商用图片素材网站网站首页图片代码
  • 建设网站商品怎么弄网站页面设计 颜色 背景 要求
  • 做网站卖仿品用户体验的重要性
  • 新手初做网站微信官网网站模板
  • 网站排名数据平面设计师工资现状