Commit 9b4ab1c1028e3df1d9058c387e377856af803a60
1 parent
335930b8
Added Dummy class to test vector operations
Showing
1 changed file
with
38 additions
and
0 deletions
examples11/04-vectortmpl/testvector.cpp
@@ -7,6 +7,33 @@ template<class C> void printvector (vector<C> v) | @@ -7,6 +7,33 @@ template<class C> void printvector (vector<C> v) | ||
7 | cout << v << endl; | 7 | cout << v << endl; |
8 | } | 8 | } |
9 | 9 | ||
10 | + | ||
11 | +class Dummy { | ||
12 | + public: | ||
13 | + Dummy() | ||
14 | + { | ||
15 | + cout << "Dummy default constructor" << endl; | ||
16 | + }; | ||
17 | + Dummy(const Dummy&) | ||
18 | + { | ||
19 | + cout << "Dummy copy constructor" << endl; | ||
20 | + }; | ||
21 | + Dummy(Dummy&&) | ||
22 | + { | ||
23 | + cout << "Dummy move constructor" << endl; | ||
24 | + }; | ||
25 | + Dummy(int) | ||
26 | + { | ||
27 | + cout << "Dummy int constructor" << endl; | ||
28 | + }; | ||
29 | + | ||
30 | + Dummy(int,double) | ||
31 | + { | ||
32 | + cout << "Dummy int,double constructor" << endl; | ||
33 | + }; | ||
34 | + | ||
35 | +}; | ||
36 | + | ||
10 | int | 37 | int |
11 | main () | 38 | main () |
12 | { | 39 | { |
@@ -63,4 +90,15 @@ main () | @@ -63,4 +90,15 @@ main () | ||
63 | d=c; | 90 | d=c; |
64 | cout << "Vector assigned" << endl; | 91 | cout << "Vector assigned" << endl; |
65 | printvector(d); | 92 | printvector(d); |
93 | + | ||
94 | + vector<Dummy> dd(10); | ||
95 | + Dummy dv; | ||
96 | + dd.push_back(dv); | ||
97 | + dd.push_back(Dummy()); | ||
98 | + dd.push_back(7); | ||
99 | + dd.emplace_back(7); | ||
100 | + dd.emplace_back(7,3.5); | ||
101 | + dd.emplace_back(7); | ||
102 | + dd.emplace_back(7); | ||
103 | + | ||
66 | } | 104 | } |