c++------类和对象(下)包含了this指针、构造函数、析构函数、拷贝构造等

2024-06-04 6253阅读

文章目录

  • 前言
  • 一、this指针
    • 1.1、this指针的引出
    • 1.2、 this指针的特性
    • 二、类的默认的六个构造函数
      • 2.1、构造函数简述
      • 2.2构造函数
      • 三、析构函数
        • 3.1、析构函数引出
        • 3.2、特点:
        • 四、拷贝构造
          • 4.1、引入
          • 4.2、特征:
          • 4.3、默认拷贝构造函数
          • 总结

            前言

            在本节中,我将给大家介绍我们在学习C++中经常要用到的,this指针、类的六个默认成员函数、运算符重载等相关知识.

            下面我会结合一个简单的类----日期类来介绍

            后面需要时会补充相应的成员函数

            class Date
            {
            public:
            	void Display()//打印类对象中的内容
            	{
            		cout 
            		_year = year;
            		_month = month;
            		_day = day;
            	}
            private:
            	int _year; // 年
            	int _month; // 月
            	int _day; // 日
            };
            
                Date d1, d2;
                d1.SetDate(2024,5,1);
                d2.SetDate(2024,6,1);
                d1.Display();
                d2.Display();
                return 0;
             }
            
            public:
            	void Print_this()
            	{
            		cout 
            	Date d1, d2;
            	d1.Print_this();//
            	cout 
            	public:
            		void Display()
            		{
            			cout 
            public:
            	void Display()//打印类对象中的内容
            	{
            		cout 
            		_year = year;
            		_month = month;
            		_day = day;
            	}
            private:
            	int _year; // 年
            	int _month; // 月
            	int _day; // 日
            };
            
            public:
                // 1.无参构造函数
                Date()
                {}
                // 2.带参构造函数
                Date(int year, int month, int day)//无返回值
                {
                    _year = year;
                    _month = month;
                    _day = day;
                }
            private:
                int _year;
                int _month;
                int _day;
            };
            void TestDate()
            {
                Date d1; // 调用无参构造函数
                Date d2(2024, 6, 1); // 调用带参的构造函数,用于初始化
                // 注意:如果通过无参构造函数创建对象时,对象后面不用跟括号,否则就成了函数声明
                // 以下代码的函数:声明了d3函数,该函数无参,返回一个日期类型的对象
                Date d3();
            
            public:
                ~Date()
                {
                    _year = 0;
                    _month = 0;
                    _day = 0;
                } 
                Date(int year, int month, int day)
                {
                    _year = year;
                    _month = month;
                    _day = day;
                }
                int _year;
                int _month;
                int _day;
            };
            int main()
            {
                Date d2(2024, 6, 1);
                return 0;
            }
            
            public:
             Date(int year = 1900, int month = 1, int day = 1)//全缺省
             {
             _year = year;
             _month = month;
             _day = day;
             }
             // Date(const Date d)   // 错误--引发无穷递归
                Date(const Date& d)   // 正确写法
             _year = d._year;
             _month = d._month;
             _day = d._day;
             }
            private:
             int _year;
             int _month;
             int _day;
            };
            int main()
            {
             Date d1;
             Date d2(d1);//也可以写成Date d2=d1
             return 0;
            }
            

相关阅读:

1、王者哪个服务器人气高些?,王者荣耀哪个服务器玩家最多?人气爆棚的区服揭秘!,或更简洁有力版本,,王者荣耀人气最高服务器竟然是它?90%玩家都选错了!,(两个版本都满足,1.疑问句式 2.数据化/悬念感 3.包含核心关键词 4.不超过20字。根据平台风格可选前者偏资讯向,后者偏悬念引流向),王者荣耀人气最高服务器是它?90%玩家都选错了!,(满足,1.疑问悬念 2.数据冲击 3.关键词突出 4.18字,偏引流向)

2、哪个国家有女性服务器?,全球哪些国家拥有令人惊叹的女性超级计算机?,(注,根据中文语境,服务器在技术领域通常指硬件设备,而女性服务器可能指代由女性主导或命名的超级计算机系统,如中国的天河三号原型机曾以古代女科学家命名。若您指的是其他含义,请提供更多背景以便调整标题。),全球哪些国家拥有由女性命名的超级计算机?

3、远端服务器是哪个网络?,你的数据到底藏在哪个神秘网络?揭秘远端服务器的真实位置!,你的数据究竟藏在世界的哪个角落?揭秘远端服务器的神秘位置!

4、塔式服务器和机架式服务器哪个小?,塔式vs机架式,谁才是真正的空间节省王者?,塔式VS机架式,谁才是数据中心的空间霸主?

5、服务器系统哪个版本最好?,2024年最值得升级的服务器系统版本究竟是哪个?,2024年服务器系统终极对决,哪个版本才是性能与安全的王者之选?

    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]