Yes of course, that's the whole point of operator overloading in C++
. In C++ you can fairly easily write something like
MyBigNumCls num1(23,75,62); // a constructor that takes 3 integers
So num1(23,75,62) could represent 23<<64 | 75<<32 | 62 and it's up to you how to store it, as three integers if you like. With the above code result, assuming you've defined MyBigNumCls::operator +(), would then represent (23+49)<<64 | (75+11)<<32 | (62+51)
This is easy to do; have a go and see how far you get. For multiplication and division just look back to how you used to do it at school on paper then implement that algorithm.