c++中的六大缺省函数

35 篇文章 0 订阅
#include<iostream>
#include<stdio.h>

using namespace std;

class TEST
{
    public:
         TEST &fun(TEST sd)
         {
             int temp;
               temp = sd.get_data() ;
               TEST tmp(temp);
               return  tmp;


         }
     public:
         void show(void)
         {
             cout << this -> data<<endl;
         }
         int get_data(void)
         {
             return data;
         }
     public:
         TEST()
         {
             cout<<this<<"调用构造函数"<<endl;
         }
         TEST(int x):data(x)
         {
             cout<<this<<"调用构造函数"<<endl;

         }
        TEST(TEST &sd)
        {
            this ->  data = sd.data;
            cout<<this<<"调用拷贝构造函数"<<endl;
        }
        TEST& operator = (const TEST &sd)
        {
            if(this != &sd){
                 this ->data = sd.data;    

            }
            cout << this << "调用赋值语句"<<endl;
            return *this;

        }

        TEST * operator &()
        {
            return this;
        }
        const TEST *operator&()const
        {
            return this;
        }
        ~TEST()
        {
            cout<<this<<"调用析构函数"<<endl;
        }
     private:
         int data;

};
int main ()
{
    TEST t;
    TEST t1(10);
    TEST t2= t;
    t =t1;
    TEST t3 = t.fun(t2);

     TEST *p_test = &t3;

    return 0;
}
0018FF38调用构造函数
0018FF34调用构造函数
0018FF30调用拷贝构造函数
0018FF38调用赋值语句
0018FEC8调用拷贝构造函数
0018FEA8调用构造函数
0018FEA8调用析构函数
0018FEC8调用析构函数
0018FF2C调用拷贝构造函数
0018FF2C调用析构函数
0018FF30调用析构函数
0018FF34调用析构函数
0018FF38调用析构函数
Press any key to continue
  1. C++中的六大缺省函数
    构造函数
    拷贝构造函数
    赋值函数
    析构函数
    普通方法的重载&
    常方法的重载&
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值