linux中模板类使用友元函数

linux中模板类使用友元函数时注意:

1. 在linux下不仅要在类里面声明函数,注意类中友元函数前不要定义模板类,直接在函数名后面加

friend ostream& operator<< (ostream& os, test1& t);

2. 在类外面也需要声明友元函数(包括重载函数),并且前面需要定义模板类

 

#pragma once
#include 
using namespace std;
template class test1;
template ostream& operator<<(ostream& os, test1& t);
template
class test1{
    public:
        
        friend ostream& operator<< (ostream& os, test1& t);
        test1(T age);
        void Show();
    public:
        
        static int a;
        T age;
};

 

你可能感兴趣的:(linux中模板类使用友元函数)