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

网站的seo如何设计asp.net 网站开发的技术优势

网站的seo如何设计,asp.net 网站开发的技术优势,wordpress 人体时钟,企业网站建设可行性分析任务list容器是一个双向链表容器&#xff0c;可以高效地进行插入删除元素&#xff0c;但是不能随机存取元素&#xff08;不支持at()和[]操作符&#xff09;。一、list容器的对象构造方法list对象采用模板类的默认构造形式例如list<T> lst&#xff1b;#include<iostream>…

list容器是一个双向链表容器,可以高效地进行插入删除元素,但是不能随机存取元素(不支持at()和[]操作符)。

一、list容器的对象构造方法

list对象采用模板类的默认构造形式

例如list<T> lst;

#include<iostream>
#include<list>
using namespace std;
int main()
{int arr[]={0,1,2,3,4};list<int> lstInt;list<float> lstFloat;list<string> listString;list<int>::iterator t1;list<int>::iterator t2;lstInt.assign(arr,arr+5);lstInt.push_back(5);//在容器尾部插入元素lstInt.push_back(5);//在容器尾部删除元素lstInt.pop_back();lstInt.push_front(0);//在容器头部插入元素lstInt.push_front(0);lstInt.pop_front();//在容器头部删除元素t1=lstInt.begin(); t2=lstInt.end(); //    正确写法 for(;t1!=t2;t1++){cout<<*t1;}cout<<endl;//    错误写法 
//    for(;t1<t2;t1++)
//    {
//        cout<<*t1;
//    }
//    cout<<endl;//输出:0012345 return 0;
}

list对象的带参构造方式

  1. list<T> lst(beg,end);该构造函数将区间[beg,end)中的元素拷贝给本身。

beg,end是数组元素的地址。

  1. list<T> list(n,elem);该构造函数将n个elem拷贝给本身。

  1. list<T> lst1(lst2);拷贝构造函数

#include<iostream>
#include<list>
using namespace std;
int main()
{int arr[]={0,1,2,3,4};list<int>::iterator t;//1、list对象带参数构造 
//正确写法 list<int> lst1(arr,arr+5);                              //建立一个存放int的list容器,初始为0,1,2,3,4 list<int> lst2(lst1.begin(),lst1.end());           //建立一个存放int的list容器,初始为0,1,2,3,4 list<int> lst3(3,100);       list<int> lst4(lst1); for(t=lst1.begin();t!=lst1.end();t++){cout<<*t<<" ";}cout<<endl;for(t=lst2.begin();t!=lst2.end();t++){cout<<*t<<" ";}cout<<endl;for(t=lst3.begin();t!=lst3.end();t++){cout<<*t<<" ";}cout<<endl;for(t=lst4.begin();t!=lst4.end();t++){cout<<*t<<" ";}cout<<endl;//输出
//0 1 2 3 4
//0 1 2 3 4
//100 100 100
//0 1 2 3 4 return 0;
} 

二、list与迭代器

list容器的迭代器是双向迭代器。

  1. list.begin();返回容器第一个元素的迭代器。

  1. list.end();返回容器最后一个元素之后的迭代器。

  1. list.rbegin();返回容器倒数第一个元素的迭代器。

  1. list.rend();返回容器倒数最后一个元素后面的迭代器。

#include<iostream>
#include<list>
using namespace std;
int main()
{int arr[]={0,1,2,3,4};list<int> lstInt;list<int>::iterator t1;list<int>::iterator t2;lstInt.assign(arr,arr+5);t1=lstInt.begin(); t2=lstInt.end(); //    正确写法 for(;t1!=t2;t1++){cout<<*t1;}cout<<endl;//    错误写法 
//    for(;t1<t2;t1++)
//    {
//        cout<<*t1;
//    }
//    cout<<endl;//输出:01234return 0;
}

三、list容器的赋值

1、list.assign(beg,end); 将区间[beg,end)中的元素拷贝给本身。

2、list.assign(n,elem);将n个elem拷贝给本身。

3、list& operator=(const list &vec);重载等号操作符。

4、list.swap(vec);将vec与本身的元素交换。

#include<iostream>
#include<list>
using namespace std;
int main()
{int arr[]={0,1,2,3,4};list<int>::iterator t;list<int> lst1;              list<int> lst2;           list<int> lst3;       lst1.assign(arr,arr+5);lst2.assign(3,100);lst3=lst1;lst2.swap(lst1);for(t=lst1.begin();t!=lst1.end();t++){cout<<*t<<" ";}cout<<endl;for(t=lst2.begin();t!=lst2.end();t++){cout<<*t<<" ";}cout<<endl;for(t=lst2.begin();t!=lst2.end();t++){cout<<*t<<" ";}cout<<endl;
//输出:
//100 100 100
//0 1 2 3 4
//0 1 2 3 4 
return ; 
} 

四、list容器的大小

list.size();返回容器中元素的个数

list.empty();判断容器是否为空

list.resize(num);重新指定容器长度,若比之前的长度长,超出部分填充默认值,若比之前的长度短,删除超出部分元素。

list.resize(num,elem);重新指定容器长度,若比之前的长度长,超出部分填充指定值,若比之前的长度短,删除超出部分元素。

五、list容器元素的插入

list.insert(pos,elem);在pos位置插入一个elem元素,返回新元素的位置(迭代器类型)

list.insert(pos,n, elem);在pos位置插入n个elem元素,无返回值

list.insert(pos,beg, end);在pos位置插入[beg,end)区间的数据,无返回值。

六、list容器的删除

1、list.clear();移除容器的所有数据

2、list.erase(beg,end);删除[beg,end)区间的数据,返回下一个数据的位置。

3、list.erase(pos);删除pos位置的元素,返回下一个数据的位置。

4、list.remove(elem);删除容器里所有值为elem的元素。

#include<iostream>
#include<list>
using namespace std;
int main()
{int arr[]={0,1,2,3,4};list<int> lstInt;list<int>::iterator t1;list<int>::iterator t2;list<int>::iterator t3;lstInt.assign(arr,arr+5);t1=lstInt.begin(); for(;t1!=lstInt.end();t1++){cout<<*t1;}cout<<endl;//01234lstInt.clear();lstInt.push_front(5);lstInt.push_front(6);lstInt.push_front(7);lstInt.push_front(8);for(t1=lstInt.begin();t1!=lstInt.end();t1++){cout<<*t1;}cout<<endl;//8765t2=++lstInt.begin();t3=++lstInt.begin();++t3;++t3;lstInt.erase(t2,t3);for(t1=lstInt.begin();t1!=lstInt.end();t1++){cout<<*t1;}cout<<endl;//85lstInt.push_front(5);lstInt.push_front(6);lstInt.push_front(7);lstInt.push_front(8);lstInt.remove(5);for(t1=lstInt.begin();t1!=lstInt.end();t1++){cout<<*t1;}cout<<endl;//8768//输出
//01234
//8765
//85
//8768return 0;
}

七、其他

  1. lst.reverse();反转列表

#include<iostream>
#include<list>
using namespace std;
int main()
{int arr[]={0,1,2,3,4};list<int> lstInt;list<int>::iterator t1;list<int>::iterator t2;lstInt.assign(arr,arr+5);lstInt.reverse();t1=lstInt.begin(); t2=lstInt.end(); for(;t1!=t2;t1++){cout<<*t1;}cout<<endl;
//    输出:43210 return 0;
}

2、删除结点导致迭代器失效

#include<iostream>
#include<list>
using namespace std;
int main()
{int arr[]={0,1,2,3,4,4,4,4,4,4,4,5,5,6,6};list<int> lstInt;list<int>::iterator t1;list<int>::iterator t2;lstInt.assign(arr,arr+15);t1=lstInt.begin(); t2=lstInt.end(); //因为list容器使用不连续分配的内存,并且它的erase方法会返回下一个有效的迭代器,所有遍历删除结点可以有以下方式: 
//方法1 for(;t1!=t2;){if(*t1==4){t1=lstInt.erase(t1);}else{t1++;}}//方法2for(;t1!=t2;t1++){if(*t1==4){lstInt.erase(t1);}}t1=lstInt.begin(); t2=lstInt.end(); for(;t1!=t2;t1++){cout<<*t1<<" ";}cout<<endl;
//输出:0 1 2 3 5 5 6 6 return 0;
}
http://www.yayakq.cn/news/757115/

相关文章:

  • 嘉兴快速建站合作权威的唐山网站建设
  • 网站购物功能如何做电子商务网站方案
  • 视频网站后台管理系统今天的新闻头条
  • 1g内存的服务器可以建设几个网站wordpress 报名表单
  • 网站建设哪家公司便宜手机价格大全
  • 个人网站取名西安seo网站推广优化
  • 刷赞网站推广qq宁海网站建设
  • 合肥建网站搜索引擎哪个好用
  • 宁波网站建设招商加盟小贷做网站
  • 网站设计 联系diy
  • 昆明网站推广专员正规网站建设价格
  • 小城镇建设的网站wordpress主题制作软件
  • 网站下载视频的方法dw网页制作成品下载
  • 公司网站建设维护合同爱论坛
  • 丝足网站的建设根据网站软件做报告
  • 网站建设全程揭秘做网站都需要什么贴吧
  • 建设网站用什么好织梦网站模板 虎嗅网
  • php网站留言板模板下载wordpress评论qq
  • 聊城大型门户网站建设dede手机网站仿站
  • 网站案例 网站建设网页制作工作总结
  • 网站备案号查询网址网店美工主要负责哪些工作
  • 海阳建设局网站常见的域名注册网站
  • 中山专业做网站的公司从事网站开发需要的证书
  • dede网站转移自学做网站可以赚钱吗
  • 网站要怎么做2024年的新闻时事热点论文
  • 柳传志 潘石屹做水果网站网站开发研究生
  • 所有网站大全内江广告制作公司
  • 湛江怎么做网站关键词优化久霸高端网页版
  • 做淘宝站外推广网站中国建筑人事部大全
  • crm系统价格茂名网站建设优化seo