zoukankan      html  css  js  c++  java
  • 模板类的友元重载函数

    #include <iostream>

    using namespace std;



    template<class T>

    class Test 

    {

    public:

    friend ostream& operator << <> (ostream& out, const Test<T>& obj);


    Test(T n=0):num(n){}


    Test(const Test<T>& copy)

    {

    num = copy.num;

    }


    private:

    T num;

    };


    template<class T>

    ostream& operator << <> (ostream& out, const Test<T>& obj)

    {

    out<<obj.num<<endl;

    return out;

    }


    int main()

    {

    Test<int> t(2);

    cout<<t;

    return 0;

    }


    或者是


    #include <iostream>

    using namespace std;



    template<class T>

    class Test 

    {

    public:

     template<class T>

    friend ostream& operator << (ostream& out, const Test<T>& obj);


    Test(T n=0):num(n){}


    Test(const Test<T>& copy)

    {

    num = copy.num;

    }


    private:

    T num;

    };


    template<class T>

    ostream& operator << (ostream& out, const Test<T>& obj)

    {

    out<<obj.num<<endl;

    return out;

    }


    int main()

    {

    Test<int> t(2);

    cout<<t;

    return 0;

    }

  • 相关阅读:
    缓存(二)
    缓存
    SQL Server 导入大数据脚本
    C#执行OracleHelper
    MERGE 用法
    c# 高效读写文件
    C#网络编程
    C#常用IO流与读写文件
    注册asp.net 4.0 到iis
    javascript原生图片懒加载
  • 原文地址:https://www.cnblogs.com/kex1n/p/2286522.html
Copyright © 2011-2022 走看看