lnicola
6/20/2014 - 4:06 PM

a class for tracing C++ constructors and assignment operators

a class for tracing C++ constructors and assignment operators

struct trace
{
    trace()
    {
        std::cout << "trace()" << std::endl;
    }

    trace(const trace &)
    {
        std::cout << "trace(const trace &)" << std::endl;
    }

    trace(trace &&)
    {
        std::cout << "trace(trace &&)" << std::endl;
    }

    trace & operator=(const trace &)
    {
        std::cout << "operator=(const trace &)" << std::endl;
        return *this;
    }

    trace & operator=(trace &&)
    {
        std::cout << "operator=(trace &&)" << std::endl;
        return *this;
    }

    ~trace()
    {
        std::cout << "~trace()" << std::endl;
    }
};