C++黑马程序员——P204-206. deque容器 构造函数,赋值操作,大小操作

  • P204. deque容器——构造函数
  • P205. deque容器——赋值操作
  • P206. deque容器——大小操作
  • P204. deque容器 构造函数

  

————————————————————————————————————————————————

  

————————————————————————————————————————————————

  

————————————————————————————————————————————————

构造函数:

  

————————————————————————————————————————————————

 1 #include <iostream>
 2 #include <deque>
 3 
 4 using namespace std;
 5 
 6 //打印deque容器的函数
 7 void printDeque(const deque<int>& d)    //加 const 是为了只读,防止修改数据
 8 {
 9     for (deque<int>::const_iterator it = d.begin(); it != d.end(); it++) {  // const_iterator 是 iterator 的 const 版本,只读的迭代器
10         //*it = 100;    只读不允许修改,会报错
11         cout << *it << " ";
12     }
13     cout << endl;
14 }
15 
16 void test01()
17 {
18     deque<int>d1;
19     for (int i = 0; i < 10; i++) {
20         d1.push_back(i);
21     }
22     printDeque(d1);
23 
24     deque<int>d2(d1.begin(), d1.end());
25     printDeque(d2);
26 
27     deque<int>d3(10, 100);  //10个100
28     printDeque(d3);
29 
30     deque<int>d4(d3);
31     printDeque(d4);
32 }
33 
34 int main() {
35 
36     test01();
37     return 0;
38 }

运行结果:

  

  

 

  • P205. deque容器 赋值操作

和 vector 容器基本一样:

  

————————————————————————————————————————————————

 1 #include <iostream>
 2 #include <deque>
 3 
 4 using namespace std;
 5 
 6 //打印deque容器的函数
 7 void printDeque(const deque<int>& d)    //加 const 是为了只读,防止修改数据
 8 {
 9     for (deque<int>::const_iterator it = d.begin(); it != d.end(); it++) {  // const_iterator 是 iterator 的 const 版本,只读的迭代器
10         //*it = 100;    只读不允许修改,会报错
11         cout << *it << " ";
12     }
13     cout << endl;
14 }
15 
16 void test01()
17 {
18     deque<int>d1;
19     for (int i = 0; i < 10; i++) {
20         d1.push_back(i);
21     }
22     printDeque(d1);
23 
24     // = 赋值
25     deque<int>d2;
26     d2 = d1;
27     printDeque(d2);
28 
29     //assign 赋值
30     deque<int>d3;
31 d3.assign(d1.begin(), d1.end());
32     printDeque(d3);
33 
34     deque<int>d4;
35     d4.assign(10, 100); //10个100
36     printDeque(d4);
37 }
38 
39 int main() {
40 
41     test01();
42     return 0;
43 } 

运行结果:

  

  

 

  • P206. deque容器 大小操作

  

注意,没有 capacity !根据它的内存模型,它可以无限插入新元素

————————————————————————————————————————————————

 1 #include <iostream>
 2 #include <deque>
 3 
 4 using namespace std;
 5 
 6 //打印deque容器的函数
 7 void printDeque(const deque<int>& d)    //加 const 是为了只读,防止修改数据
 8 {
 9     for (deque<int>::const_iterator it = d.begin(); it != d.end(); it++) {  // const_iterator 是 iterator 的 const 版本,只读的迭代器
10         //*it = 100;    只读不允许修改,会报错
11         cout << *it << " ";
12     }
13     cout << endl;
14 }
15 
16 void test01()
17 {
18     deque<int>d1;
19     for (int i = 0; i < 10; i++) {
20         d1.push_back(i);
21     }
22     printDeque(d1);
23 
24     if (d1.empty()) {
25         cout << "d1 为空" << endl;
26     }
27     else {
28         cout << "d1 不为空" << endl;
29         cout << "d1 的大小为:" << d1.size() << endl;
30         //deque 容器没有容量 capacity
31     }
32 
33     //重新指定大小
34     d1.resize(15);  //多余部分会用默认值填充35     printDeque(d1);
36 
37     d1.resize(20, 1);  //多余部分会用 1 填充
38     printDeque(d1);
39 
40     d1.resize(5);  //多余部分直接删掉
41     printDeque(d1);
42 }
43 
44 int main() {
46     test01();
47     return 0;
48 }

运行结果:

  

  

(〃>_<;〃)(〃>_<;〃)(〃>_<;〃)

posted @ 2023-05-15 21:21  我会变强的  阅读(20)  评论(0)    收藏  举报