c++ friend関数とfriendクラスの違いを知りたいです。
c++の参考書で「friend関数はthisポインタを持たない、そのクラスに所属しているわけではない、非公開メンバにアクセスできる。
タイトル通り friend関数とfriendクラスの違いについて教えて欲しいです。
int main(){
Date a(4),b(3);
Date c = test(a,b);
}
class Date {
private:
//double d;
int x;
int z;
static int prst;//静的記憶域期間
public:
Date();
Date(int x);
void print();
//////////////////////////////////
friend Date test(const Date& a, const Date& b)//friend関数
{
return Date(a.x + b.x);
}
//////////////////////////////////
int y = 0;
static int pust;//静的記憶域期間
void pri(int x);
static void pri_st(int x);
};