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

网站开发如何验证可以申请域名的网站

网站开发如何验证,可以申请域名的网站,专业网站建设加盟合作,网页设计实验报告需求分析一、介绍 在STL中一般删除的方式有两类#xff0c;一种是使用全局的std::remove(remove_if类似)#xff0c;一种是使用容器自带的erase#xff0c;前者其实并没有真正的删除数据#xff0c;而后者则是在移动时#xff0c;会有一些细节的处理#xff0c;否则要么程序崩溃…一、介绍 在STL中一般删除的方式有两类一种是使用全局的std::remove(remove_if类似)一种是使用容器自带的erase前者其实并没有真正的删除数据而后者则是在移动时会有一些细节的处理否则要么程序崩溃要么达不到删除的目的。下面就这两个函数进行一下分析说明。 在一些容器中也提供了remove如std::list方法,它和全局的std::remove还是用法区别不小的这个大家需要自己看一下。 注C20提供了std::erase这种更方便的用法 二、std::remove和 erase 1、std::remove 它的定义很简单 template class ForwardIt, class T ForwardIt remove( ForwardIt first, ForwardIt last, const T value );(C20 前) template class ForwardIt, class T constexpr ForwardIt remove( ForwardIt first, ForwardIt last, const T value );(C20 起) template class ExecutionPolicy, class ForwardIt, class T ForwardIt remove( ExecutionPolicy policy,ForwardIt first, ForwardIt last, const T value );其功能是实现删除在迭代器指定的范围内的所有满足条件的元素并返回尾后迭代器。需要说明的这里的删除并未真正删除只是移动可以在下面的例程中看到相关的示例代码。 2、erase 看一下vector中的定义 iterator erase( iterator pos );(until C11) iterator erase( const_iterator pos );(since C11)(until C20) constexpr iterator erase( const_iterator pos );(since C20)(2) iterator erase( iterator first, iterator last );(until C11) iterator erase( const_iterator first, const_iterator last );(since C11)(until C20) constexpr iterator erase( const_iterator first, const_iterator last );(since C20)它的定义很明显有两种用法一种是删除指定位置的元素一种是删除指定范围的元素。这次之所以总结一下就是因为发现错误的删除方式不再崩溃。所以得到的结论是有时崩溃有时不崩溃看环境。 3、二者混合 其实就是移动并删除被删除的元素有点拗口。就是将remove移动后的元素不再使用的空间内的元素真正删除并和迭代器等自然挂钩。看下面的例子就会明白。 三、例程 例程是以std::vector做为例程的其它的容器可能细节上会有一些差别但总体上的应用是一致的。感兴趣可以把其它的几个容器都试一下。 #include algorithm #include cctype #include iostream #include string #include vectorvoid testErase2() {std::vectorint vec{1, 5, 2, 2, 3, 4, 2, 5, 6, 8, 9, 12};vec.erase(vec.begin() 9, vec.end());std::cout cur vec:;for (auto d : vec) {std::cout d ,;}std::cout std::endl; } void testRemoveErase() {std::vectorint vec{1, 5, 2, 2, 3, 4, 2, 5, 6, 8, 9, 12};auto it std::remove(vec.begin(), vec.end(), 2);for (auto beg it; beg ! vec.end(); beg) {std::cout *beg --- std::endl;}for (auto beg vec.begin(); beg ! vec.end(); beg) {std::cout *beg --- std::endl;}vec.erase(it, vec.end());std::cout cur vec:;for (auto d : vec) {std::cout d ,;}std::cout std::endl; } void testDelVec() {std::vectorint vec{1, 5, 5, 4, 5, 6};std::cout vec size: vec.size() std::endl;for (auto it vec.begin(); it ! vec.end();) {if (*it 5) {it vec.erase(it);//vec.erase(it);//在Ubuntu22Qt环境不崩溃std::cout delete it: *it std::endl;} else {it;}}std::cout delete it end std::endl;std::cout delete it end vec value: std::endl;for (auto d : vec) {std::cout d ,;}std::cout std::endl; } void testVec() {std::vectorint vec{1, 5, 5, 4, 5, 6};auto iter std::remove(vec.begin(), vec.end(), 5);std::cout size is : vec.size() std::endl;std::cout capacity is : vec.capacity() std::endl;for (auto first vec.begin(); first iter; first) {std::cout *first ;}return; } void testStr() {std::string test_str My test this delete ORC;auto it std::remove(test_str.begin(), test_str.end(), );std::cout test_str std::endl;auto x test_str.erase(it, test_str.end());std::cout test_str: test_str std::endl; } int main() {testErase2();testRemoveErase();testDelVec();testVec();testStr();return 0; } 另外还有一些不太标准的删除方式如使用resize()函数等一般不推荐不过在某些场合下可能会用着更方便。实际场景决定实际开发的代码吧不要刻意追求某种方法。 四、总结 之所以把STL中的删除分析一下是因为早期的印象是只要使用循环遍历的方式不处理迭代器暴力删除容器内容一定会崩溃可现在发现在g中其实是不崩溃的把这两个和删除相关的函数就写了个程序跑了一下给大家一个借鉴。没有什么难度重点是细节要弄清楚。
http://www.eeditor.cn/news/121055/

相关文章:

  • 黄冈建设培训中心网站wed网站
  • dedecms英文外贸网站企业模板智慧团建网站链接
  • 医疗企业网站模板免费下载页面设计的英文
  • 响应式网站建设特征即时通讯app开发
  • 玉林市建设工程交易中心网站网页版视频怎么下载
  • 营销型网站推广方案wordpress最佳速度优化
  • 专门做画册封面的网站电商网站建设费用价格
  • 企业网站关联优化个人网站做seo
  • 新锐媒体网站建设方案查看网站用什么软件做的
  • 网站常用模块功能说明河南工程建设信息网一体化平台
  • 网站seo内部优化汕头教育学会网站建设
  • 现代企业网站建设特点wordpress开发视频网站模板下载
  • 个人备案网站放什么手续高端制作网站服务
  • 如何给公司做一个网站网络运维简历
  • 大连做外贸建站的专业公司建筑设计公司加盟分公司
  • 360免费建站庄辉个人网站建设教学
  • 网站建设公司保定市第四章第二节网站建设的教学设计
  • 娱乐公司网站建站背景介绍登封哪里有做网站的
  • 求个免费网站自己的电脑做网站服务器吗
  • 电子商务网站建设实训展示网上做调查问卷的网站
  • 国家排污许可网站台账怎么做重庆网站营销案例
  • 个人站长做电音网站专业的上海网站建设公司排名
  • wordpress付费关键词优化一年多少钱
  • 安平县网站建设wordpress 下载站主题
  • 简述网站开发的具体流程有域名怎么建网站南宁
  • 网站设计一般用什么软件西安网红
  • 天猫网站建设的目标vue做的网站域名汇总
  • 计算机毕设做网站专业手机网站建设价格明细表
  • 成都网站建设哪家好用wordpress
  • 如何做响应式布局网站淘宝客自建网站做还是用微信qq做