#include "ClassA.h" #include ClassA::ClassA() : IComparable(), _number(0), _pDecimal(new float(0.0f)) { std::cout << "ClassA()" << std::endl; // _pDecimal = new float(0.0f); } ClassA::ClassA(const ClassA &other) : IComparable(), _number(other._number), _pDecimal(new float(*other._pDecimal)) { std::cout << "ClassA(const ClassA &other)" << std::endl; // // for presentation only // // shallow copy // _number = other._number; // *_pDecimal = *other._pDecimal; // // // deep copy // _number = other._number; // _pDecimal = new float(*other._pDecimal); } ClassA::~ClassA() { std::cout << "~ClassA()" << std::endl; delete _pDecimal; _pDecimal = nullptr; } void ClassA::Print() { std::cout << "ClassA" << std::endl; } int ClassA::CompareTo(IComparable *other) { return 0; }