1 #include <iostream>
2 using namespace std;
3
4 class myclass
5 {
6 public:
7 int x;
8 int y;
9 public:
10 myclass() = default;
11 //拷贝构造
12 //myclass(const myclass &my) = default;//默认的会拷贝数据
13 myclass(const myclass &my)
14 {
15 x = my.x;
16 y = my.y;
17 }
18 };
19
20 //函数参数也有副本机制,调用拷贝构造
21 void show(myclass my1)
22 {
23 cout << my1.x << my1.y << endl;
24 }
25
26 //参数为引用不会调用拷贝构造
27 void show(myclass &my1)
28 {
29 cout << my1.x << my1.y << endl;
30 }
31
32 void main()
33 {
34 myclass my1;
35 my1.x = 20;
36 my1.y = 30;
37 //拷贝构造
38 myclass my2(my1);
39 //拷贝构造
40 myclass my3 = my1;
41
42 cout << my2.x << my2.y << endl;
43 cin.get();
44 }