类友元错误不会i修改,不知道如何修改?

大家好 ,有没有人能帮我修改这6个错误
我正在学习类友元访问另一个类中的私有属性,照着视频里敲的,但是有6个错误,我不会更改,麻烦大家帮个忙,指导我更改一下错误。



#include 
using namespace std;
#include 
class goodgay 
{
public:
    goodgay();
    void visit();//参观函数访问building内的属性
public:
    building *building;
};
class building
{
public:
    building();
public:
    string m_sittingroom;
protected:
private:
    string m_bedroom;
};
//类外写成员函数
building::building()
{
    m_sittingroom="客厅";
    m_bedroom="卧室";
}
//成员函数
goodgay::goodgay()
{
    //创建建筑物对象
    building=new building;
}
void goodgay::visit()
{
    cout<<"好gay类正在访问"<m_sittingroom<void test01(){
    goodgay gg;
    gg.visit();
    system("pause");
}
int main()
{
    test01();
    system("pause");
    return 0;
}

以下是错误提示
1error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1 error C2513: “building”: 在“=”前没有声明变量
1 error C2819: “building”类型没有重载成员“operator ->”
1 error C2232: “->building::m_sittingroom”: 左操作数有“class”类型,使用“.”

building *building
变量名你非得起的和类名一样吗???????