I am trying to write an overloaded operator= to assign copy the content of an object studentA to studentB. After compiling, it just crashes and as usual "stops working".
#include <cstdlib>
#include <iostream>
using namespace std;
class STUDENT {
    public:
        string ID;
        string name;
        unsigned int birthyear;
        STUDENT(string x, string y, unsigned int z) {
            ID = x;
            name = y;
            birthyear = z;
        };
        STUDENT operator = (STUDENT const &obj) {
            STUDENT *res;
                *res = obj;
            return *res; 
        }
        void print() {
            cout << ID << " " << name << " " << birthyear;
        } 
};
int main() {
    STUDENT studentA("1951049", "Nguyen Vinh Hao", 2001);
    STUDENT studentB("1951050", "Nguyen Van Hao", 1999);
    studentB = studentA;
    studentB.print(); 
    return 0;
}
I think there are some problems with the pointer *res, but I don't really know what they are. I hope you can help me.
 
     
     
     
    