typedef typedef struct _OBJTIME {
    WORD wYear;
    WORD wMonth;
    WORD wDayOfWeek;
    WORD wDay;
    WORD wHour;
    WORD wMinute;
    WORD wSecond;
    WORD wMilliseconds;
} OBJTIME

OBJTIME objTime; //Note, this objTime is modified other function
OBJTIME ObjectParent::returnObjTime() const
{
    return objTime;
}

我的问题是:
  • 如果另一个类调用 returnObjTime() 函数,比如:

    OBJTIME t = objectP->returnObjTime()
    我假设将创建 OBJTIME 结构的新拷贝?
  • 完成后是否需要删除变量“t”?它会造成内存泄漏吗?

  • 谢谢。

    最佳答案

    不,您返回的是 global objTime 的拷贝,拷贝和全局都具有基于其作用域的持续时间,这意味着当它们的作用域结束时,它们将自动从内存中释放。

    关于c++ - 在 C++ 中,如果函数返回一个结构体,我是否需要在使用它后删除该结构体?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14124957/

    10-10 21:31