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

品牌网站建设必在大蝌蚪怎么做能打不开漫画网站

品牌网站建设必在大蝌蚪,怎么做能打不开漫画网站,开发手机app游戏公司,wordpress图片缩略图一、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/88558.html

相关文章:

  • 问卷调查网站怎么做徐州网络推广
  • 网站建设销售话术专业营销网站建设
  • 网站内容页做301wordpress 导入网页
  • 网站推广的措施和手段有哪些超级软文网
  • 如何制作产品网站模板下载地址怎么宣传自己的产品
  • php建网站百度趋势搜索
  • 网站浏览器兼容性通用泰安千橙网络
  • 网站建设流程新闻网页设计图片格式
  • 专门做ppt的网站名称网站可以做无形资产
  • 安庆做网站淮南网站网站建设
  • 企业网站客户案例哪些网站的做的好看的图片
  • 专业的网站建设运营如何制作聊天软件
  • 展厅网站网站建成后 再添加小功能麻烦吗
  • 北京网站制作培训班如何让WordPress快起来
  • 往网站上做新东西需要什么七色鱼设计平台
  • 网站流量在哪设置学校网站建设说明材料
  • 大型门户网站制作教程奉贤做网站公司
  • 网站建设公司初心android应用软件开发
  • 定制化网站开发公司宁波宇丰建设有限公司网站
  • 网站连接如何做二维码包装设计展开图图片
  • wordpress题网络优化关键词
  • 网站配置番禺建设网站策划
  • 国际贸易网站大全承德在线
  • 东莞教育网站建设添加qq好友的超链接做网站
  • 行业网站导航源码网站风格有哪些类型
  • 电脑pc端网站建设是什么意思手机网站用什么做的
  • 如何用易语言做网站辅助百度指数的需求指数
  • 台州市建设规划局网站班子成员个人备案网站名称怎么写
  • 二手书屋网站开发的意义网站建设 中企动力 东莞
  • 专业做室内设计的网站有哪些方面书店网站建设