• 类作为其自身成员函数参数时的类型


    类作为其自身成员函数参数时的类型

             类作为其自身成员函数参数时可以有三种情形:

             1.引用,包含const和非const引用

             2.指针

             3.值类型

             在做类内部的成员函数参数时,编译器允许使用值类型,也就是说这时类已定义完毕。

             对于其他类,如果只有声明没有定义,那么只能是引用和指针类型。

             代码如下:

    #include <iostream>
    using namespace std;
    
    class T
    {
    private:
        int n;
    
    public:
        T();
        T(int);
        T(int, T); // 这里参数的类型可以是类自身的值类型,不仅仅是引用或指针类型
        //T(int, const T&)
        ~T();
    
        int val() const;
        void val(int k);
        void print() const;
    };
    
    T::T() : n(1) {}
    T::T(int k) : n(k) {}
    T::T(int k, T t) : n(k + t.val()) {}
    //T::T(int k, const T& t) : n(k + t.val()) {}
    T::~T() {}
    
    int T::val() const
    {
        return n;
    }
    
    void T::val(int k)
    {
        n = k;
    }
    
    void T::print() const
    {
        cout << n << endl;
    }
    
    int main()
    {
        T t1;
        t1.print();
    
        T t2(5);
        t2.print();
    
        T t3(3, t2);
        t3.print();
    
        return 0;
    }

  • 相关阅读:
    oracle使用expdp备份数据库
    用Setuptools构建和分发程序包
    C#5.0-原生异步编程方式
    任务并行库
    线程-线程池1
    多线程-3(同步)
    多线程-2(线程同步)
    线程---1
    高性能-GC3
    高性能-GC2
  • 原文地址:https://www.cnblogs.com/unixfy/p/3462008.html
Copyright © 2020-2023  润新知