日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

顺序容器赋值运算

發(fā)布時(shí)間:2024/4/18 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 顺序容器赋值运算 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、迭代器賦值(obj.assign(s.begin(),s.end()))

功能:利用順序容器s的迭代器s.begin()和s.end()給obj賦值.

#include <iostream> #include <string> #include <vector> #include <deque> #include <list> #include <forward_list> #include <string> #include <array> using namespace std; #define LENGTH 10 typedef int TYPE; typedef vector<TYPE> VECTORTYPE; typedef deque<TYPE> DEQUETYPE; typedef list<TYPE> LISTTYPE; typedef forward_list<TYPE> FORWARD_LISTTYPE; typedef array<TYPE,LENGTH> ARRAYTYPE; void print(VECTORTYPE & ); void print(DEQUETYPE & ); void print(LISTTYPE & ); void print(FORWARD_LISTTYPE & ); void print(ARRAYTYPE & ); void print(string &);int main() {vector<int> v_int = {1,2,3,4,5,6,7,8,9},v_int1,v_int2,v_int3,v_int4,v_int5,v_int6;deque<int> d_int = {11,12,13,14,15,16,17,18,19},d_int1,d_int2,d_int3,d_int4,d_int5;list<int> l_int = {21,22,23,24,25,26,27,28},l_int1;forward_list<int> for_int = {31,32,33,34,35,36,37,38},for_int1;array<int,LENGTH> a_int = {41,42,43,44,45,46},a_int1,a_int2,a_int3,a_int4,a_int5,a_int6;string s_int{"12345678"},s_int1;d_int1.assign(v_int.begin(),v_int.end());s_int1.assign(s_int.begin(),s_int.end());print(s_int1);d_int1.assign({111,222,333,444,555});//according to the object order of vector\deque\list\forward_list\array\string//vector object can use all the other object(list,forward_list,deque,array) to assign value.f.g:v_int1.assign(d_int.begin(),d_int.end());v_int2.assign(l_int.begin(),l_int.end());v_int3.assign(for_int.begin(),for_int.end());v_int4.assign(a_int.begin(),a_int.end());print(v_int1);print(v_int2);print(v_int3);print(v_int4);print(v_int5);d_int1.assign(v_int.begin(),v_int.end());d_int2.assign(d_int.begin(),d_int.end());d_int3.assign(l_int.begin(),l_int.end());d_int4.assign(for_int.begin(),for_int.end());d_int5.assign(a_int.begin(),a_int.end());print(d_int1);print(d_int2);print(d_int3);print(d_int4);print(d_int5);// a_int1.assign(v_int);錯(cuò)誤,array對(duì)象不能調(diào)用assign函數(shù),但是array對(duì)象可以通過(guò)迭代器給 //其它非array對(duì)象通過(guò)assign對(duì)象賦值 // a_int2.assing(d_int);同上 // a_int3.assign(l_int);同上 // a_int4.assign(for_int);同上 // a_int5.assign(a_int);同上 // print(a_int1); // print(a_int2); // print(a_int3); // print(a_int4); // print(a_int5);l_int1.assign(v_int.begin(),v_int.end());l_int2.assign(d_int.begin(),d_int.end());l_int3.assign(l_int.begin(),l_int.end());l_int4.assign(for_int.begin(),for_int.end());l_int5.assign(a_int.begin(),a_int.end());l_int6.assign(s_int.begin(),s_int.end());//這里的s_int是string對(duì)象,string對(duì)象的元素是字符,會(huì)轉(zhuǎn)化成int,請(qǐng)務(wù)必注意cout << " list 's assign" << endl;print(l_int1);print(l_int2);print(l_int3);print(l_int4);print(l_int5);for_int1.assign(v_int.begin(),v_int.end());for_int2.assign(d_int.begin(),d_int.end());for_int3.assign(l_int.begin(),l_int.end());for_int4.assign(for_int.begin(),for_int.end());for_int5.assign(a_int.begin(),a_int.end());for_int6.assign(s_int.begin(),s_int.end());print(for_int1);print(for_int2);print(for_int3);print(for_int4);print(for_int5);print(for_int6);//string objects_int1.assign(v_int.begin(),v_int.end());s_int2.assign(d_int.begin(),d_int.end());s_int3.assign(l_int.begin(),l_int.end());s_int4.assign(for_int.begin(),for_int.end());s_int5.assign(a_int.begin(),a_int.end());cout << "begin to print string object." << endl;print(s_int1);print(s_int2);print(s_int3);print(s_int4);print(s_int5);cout <<char(49) << endl;cout << char(50) << endlcout << "last one" << endl;cout << "s_int ' value is:" << s_int << endl;print(l_int6);return 0; } void print(VECTORTYPE &vec) {for(VECTORTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(DEQUETYPE &vec) {for(DEQUETYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(LISTTYPE &vec) {for(LISTTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(FORWARD_LISTTYPE &vec) {for(FORWARD_LISTTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(ARRAYTYPE &vec) {for(ARRAYTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(string & s_vec) {for(string::iterator i = s_vec.begin(); i != s_vec.end() ; ++i) {cout << *i << " ";}cout << endl; }

結(jié)論:

1.a_int1.assign(v_int);//這里a_int1是個(gè)array對(duì)象

錯(cuò)誤,array對(duì)象不能調(diào)用assign函數(shù),但是array對(duì)象可以通過(guò)迭代器給其它非array對(duì)象通過(guò)assign對(duì)象賦值
例如:array_object.assign(some_object);//錯(cuò)誤,array對(duì)象沒有assign這個(gè)成員函數(shù)
2. l_int6.assign(s_int.begin(),s_int.end());//這里的s_int是string對(duì)象,string對(duì)象的元素是字符,會(huì)轉(zhuǎn)化成int,請(qǐng)務(wù)必注意

3.string對(duì)象和其它對(duì)象都可以調(diào)用assign利用迭代器進(jìn)行給對(duì)方賦值。但是結(jié)果是元素類型之間的轉(zhuǎn)化。string對(duì)象的元素類型是char,而其它容器的類型,要具體看是什么類型容器。

舉例1:array<int,5>? arr_1{1,2,3,4,5};

? ? ? ? ? ?string s1;

? ? ? ? ? ?s1.assign(arr_1.begin(),arr_1.end());那么結(jié)果會(huì)把1,2,3,4,5轉(zhuǎn)換成字符(char型),給s1賦值。結(jié)果不可顯示。

?舉例2:string s2 = "12345";

? ? ? ? ? ?list<int> list_1;

? ? ? ? ?list_1.assign(s2.begin(),s2.end());那么結(jié)果會(huì)把s2中的元素(char型)1、2、3、4、5轉(zhuǎn)換成int,分別是49,50,51,52,53.

???

二、利用seq.assign(i1)將seq中的元素替換為初始化列表i1中的元素。

#include <iostream> #include <string> #include <vector> #include <deque> #include <list> #include <forward_list> #include <string> #include <array> using namespace std; #define LENGTH 10 typedef int TYPE; typedef vector<TYPE> VECTORTYPE; typedef deque<TYPE> DEQUETYPE; typedef list<TYPE> LISTTYPE; typedef forward_list<TYPE> FORWARD_LISTTYPE; typedef array<TYPE,LENGTH> ARRAYTYPE; void print(VECTORTYPE & ); void print(DEQUETYPE & ); void print(LISTTYPE & ); void print(FORWARD_LISTTYPE & ); void print(ARRAYTYPE & ); void print(string &);int main() {vector<int> v_int{1,2,3,4,5,6},v_int1;deque<int> d_int{1,2,3,4,5,6},d_int1;list<int> l_int{1,2,3,4,5,6},l_int1;forward_list<int> f_int{1,2,3,4,5,6},f_int1;string s1{"12345"},s2;array<int,5> a_int{1,2,3,4,5},a_int1;v_int1.assign({1,2,3,4,5,6});d_int1.assign({1,2,3,4,5});l_int.assign({1,3,4,5,6,7});f_int1.assign({1,2,3,4,5,6});s1.assign("abcdefg");print(v_int1);print(d_int1);print(l_int);print(f_int1);print(s1);return 0; } void print(VECTORTYPE &vec) {for(VECTORTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(DEQUETYPE &vec) {for(DEQUETYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(LISTTYPE &vec) {for(LISTTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(FORWARD_LISTTYPE &vec) {for(FORWARD_LISTTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(ARRAYTYPE &vec) {for(ARRAYTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(string & s_vec) {for(string::iterator i = s_vec.begin(); i != s_vec.end() ; ++i) {cout << *i << " ";}cout << endl; }

總結(jié):對(duì)于seq.assign({?... });//結(jié)果是用{...}初始化順序容器對(duì)象seq.除了array,其它容器都可以.

3.seq.assign(n,t);//給seq賦值為n個(gè)元素t.t是seq的元素類型.

#include <iostream> #include <string> #include <vector> #include <deque> #include <list> #include <forward_list> #include <string> #include <array> using namespace std; #define LENGTH 10 typedef int TYPE; typedef vector<TYPE> VECTORTYPE; typedef deque<TYPE> DEQUETYPE; typedef list<TYPE> LISTTYPE; typedef forward_list<TYPE> FORWARD_LISTTYPE; typedef array<TYPE,LENGTH> ARRAYTYPE; void print(VECTORTYPE & ); void print(DEQUETYPE & ); void print(LISTTYPE & ); void print(FORWARD_LISTTYPE & ); void print(ARRAYTYPE & ); void print(string &);int main() {vector<int> v_int{1,2,3,4,5,6},v_int1;deque<int> d_int{1,2,3,4,5,6},d_int1;list<int> l_int{1,2,3,4,5,6},l_int1;forward_list<int> f_int{1,2,3,4,5,6},f_int1;string s1{"12345"},s2;array<int,5> a_int{1,2,3,4,5},a_int1;//vectorv_int1.assign(10,5);print(v_int1);//dequed_int1.assign(11,6);print(d_int1);//forward_listf_int1.assign(12,3);print(f_int1);//forward_litf_int1.assign(4,2);print(f_int1);//strings1.assign(10,'a');s1.assign(5,2);print(s1);return 0; } void print(VECTORTYPE &vec) {for(VECTORTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(DEQUETYPE &vec) {for(DEQUETYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(LISTTYPE &vec) {for(LISTTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(FORWARD_LISTTYPE &vec) {for(FORWARD_LISTTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(ARRAYTYPE &vec) {for(ARRAYTYPE::iterator i = vec.begin() ; i != vec.end() ; ++i){ cout << *i << " ";}cout << endl;return ; }void print(string & s_vec) {for(string::iterator i = s_vec.begin(); i != s_vec.end() ; ++i) {cout << *i << " ";}cout << endl; }

總結(jié):如果是string對(duì)象,則要注意,string對(duì)象可有把int類型轉(zhuǎn)化過(guò)去。這其中利用了 int -> char 類型轉(zhuǎn)化。比如49轉(zhuǎn)化為1,50轉(zhuǎn)化為2.。。

?

總結(jié)

以上是生活随笔為你收集整理的顺序容器赋值运算的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产在线导航 | 麻豆成人av| 亚洲一区二区三区免费视频 | 中文字幕亚洲欧美日韩在线不卡 | 欧美综合专区 | 一区二区三区久久 | 极品国产91在线网站 | 韩日欧美 | 人妻一区二区视频 | 免费看国产视频 | 天美视频在线观看 | 一本色道久久综合亚洲 | 国内视频一区 | 国产精品一区二区三区免费观看 | 免费精品视频在线 | 国产一区二区在线视频观看 | 国产美女菊爆在线播放APP | 亚洲国产成人精品一区二区三区 | 91视频免费播放 | 天天狠天天插 | 精品无码久久久久久久久久 | 女人18岁毛片 | 免费一级a毛片夜夜看 | 男操女视频免费 | 极品少妇xxxx精品少妇 | 美女露胸露尿口 | www.蜜臀av.com| 亚洲激情综合网 | 精品国产一区二区三区久久久蜜月 | 国产麻豆剧传媒精品国产av | 尹人香蕉网| 亚欧洲精品 | 亚洲欧美日韩免费 | 狠狠香蕉 | 麻豆高清| 免费在线观看成人av | 国产精品无码午夜福利 | 天天综合网天天综合色 | 日韩激情电影在线 | 反差在线观看免费版全集完整版 | 欧美伦理片| 综合视频一区二区 | 午夜影院在线观看免费 | 无码人妻丰满熟妇精品 | 超碰h| 欧美不卡网 | 久久avav | av色成人| 可以免费看黄的网站 | 激情视频在线播放 | 日本精品视频一区二区 | 少妇一级淫片aaaaaaa | 美女黄色免费网站 | 亚洲成人av网址 | 懂色av一区二区三区蜜臀 | 在线视频观看一区 | 日韩制服诱惑 | 色亚洲成人 | 成年人网站免费观看 | 看毛片网 | 久草成人在线视频 | 黄色片在线观看免费 | 伊人久久精品一区二区三区 | 黄色免费高清 | 天天综合网久久综合网 | 朝鲜女人性猛交 | 91啪国产在线 | 国产综合精品视频 | 亚洲精品三级 | 国产亚洲精品成人无码精品网站 | 午夜视频在线播放 | 97爱爱视频| 亚洲精品视频免费在线观看 | 日本强好片久久久久久aaa | 在线免费观看麻豆 | 91精品国产欧美一区二区成人 | 亚洲私拍 | 欧美3p视频 | 欧美做爰爽爽爽爽爽爽 | 久久福利视频导航 | 国产美女无遮挡永久免费 | 欧美a级片视频 | 国产美女主播在线观看 | 久久午夜剧场 | 久久精选视频 | 日韩精品视频观看 | 黑人借宿巨大中文字幕 | 麻豆国产免费 | 国产成人亚洲精品 | 三级视频网| 一二区在线视频 | 丰满少妇被猛烈进入一区二区 | 日韩av一区二区在线播放 | 总受合集lunjian双性h | 天天射天天草 | 国产伦理一区二区 | 老妇free性videosxx | 91看片国产| 五月天激情社区 |