c++不知道该改哪里

#includeusing namespace std;class GcdLcm{private: int a; int b;public: GcdLcm(); gcd(int,int); lcm(int,int);};int GcdLcm::gcd(int a,int b) { while(b != 0) { int t = a; a = b; b = t % b; } return a;}int GcdLcm::lcm(int a,int b){ return a * b / gcd(a, b);}int main(){ GcdLcm gcd; GcdLcm lcm; int a,b; while(cin >> a >> b) { cout <<gcd(a, b) << " " <<lcm(a,b); } return 0;}


#include<iostream>
using namespace std; 
class GcdLcm { 
private:
    int a; 
    int b; 
public: 
    GcdLcm() {}
    int gcd(int a, int b);
    int lcm(int a, int b); 
}; 
int GcdLcm::gcd(int a, int b) 
{ 
    while (b != 0) {
        int t = a; 
        a = b; 
        b = t % b; 
    } 
    return a; 
}
int GcdLcm::lcm(int a, int b)
{ 
    return a * b / gcd(a, b); 
}
int main() 
{ 
    GcdLcm gcd; 
    GcdLcm lcm; 
    int a, b; 
    while (cin >> a >> b) 
    { 
        cout << gcd.gcd(a, b) << " " << lcm.lcm(a, b); 
    } 
    return 0; 
}