这个错误在哪呀。将数据成员改为私有的,将输入和输出的功能改为由成员函数实现,在类体内定义成员函数,这样的要怎么写呀

1.请检查下面程序,找出其中的错误(先不要上机,在纸面上作人工检查),并改正然后上机调试,使之能正常运行。运行时从键盘输入时、分、秒的值,检查输出是否正确
#include
using namespace std;
class Time
{ void set_time(void);
void show_time(void);
int hour;
int minute;
int sec;} ;
Time t;
int main()
{
set_time();
show_time();
return 0;
}
int set_time(void)
{
cin>>t.hour;
cin>>t.minute;
cin>>t.sec;
}
int show_time(void)
{
cout<<t .hour<<": "<<t.minute<<":"<<t.sec<<endl;
}


#include <iostream>
using namespace std;

class Time
{
public:
    void set_time(void);
    void show_time(void);

private:
    int hour;
    int minute;
    int sec;
};

void Time::set_time(void)
{    
    cin >> this->hour;
    cin >> this->minute;
    cin >> this->sec;
}

void Time::show_time(void)
{
    cout << this->hour << ":" << this->minute << ":" << this->sec << endl;
}

int main()
{
    Time t;
    t.set_time();
    t.show_time();
    return 0;
}