码迷,mamicode.com
首页 > 其他好文 > 详细

类的构造函数、析构函数与赋值函数

时间:2018-08-02 13:15:54      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:temp   声明   str   get   ons   --   oat   nbsp   argc   

类的构造函数、析构函数与赋值函数

构造函数、析构函数与赋值函数是每个类最基本的函数。它们太普通以致让人容易 麻痹大意,其实这些貌似简单的函数就象没有顶盖的下水道那样危险。

每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝 构造函数,其它的称为普通构造函数)。对于任意一个类 A,如果不想编写上述函数, C++编译器将自动为 A 产生四个缺省的函数。

 

 1 #include <iostream>
 2 
 3 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
 4 using namespace std;
 5 int main(int argc, char** argv) {
 6         //定义date结构
 7     struct date
 8     {
 9        int year;
10        int month;
11        int day;
12     };
13 
14     //定义baby结构
15     struct baby {
16         int    num;
17         float   weight;
18         date   birthday;   // date为结构类型 
19     }; 
20     
21     //声明baby结构变量并初始化
22     baby b1={10001,10,{2002,12,25}};
23 
24     //下列是baby结构变量b1的引用。
25     cout<<"b1.num="<<b1.num<<endl;
26     cout<<"b1.weight="<<b1.weight<<endl;
27     cout<<"b1.birthday.year="<<b1.birthday.year<<endl;
28     cout<<"b1.birthday.month="<<b1.birthday.month<<endl;
29     cout<<"b1.birthday.day="<<b1.birthday.day<<endl;
30     cout<<"--------------------------"<<endl;
31 
32     //声明baby结构变量temp,并进行赋值运算
33     baby temp;
34     temp=b1;
35     cout<<"temp.num="<<temp.num<<endl;
36     cout<<"temp.weight="<<temp.weight<<endl;
37     cout<<"temp.birthday.year="<<temp.birthday.year<<endl;
38     cout<<"temp.birthday.month="<<temp.birthday.month<<endl;
39     cout<<"temp.birthday.day="<<temp.birthday.day<<endl;
40     return 0;
41 }

 

类的构造函数、析构函数与赋值函数

标签:temp   声明   str   get   ons   --   oat   nbsp   argc   

原文地址:https://www.cnblogs.com/borter/p/9406537.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!