#include #include "SmartPointer.h" #include "Date.h" int main() { std::cout << "Hello, World!\n\n"; SmartPointer date1(new Date(6, 5, 2020)); { SmartPointer date2 = date1; } std::cout << date1->toString() << std::endl; SmartPointer date2(new Date(1, 1, 2019)); date2 = date1 = date1 = date1 = date1 = date1; date2 = date2; date2 = date2; std::cout << "reference count: " << date2.useCount() << std::endl; return 0; }