class time24;
class time12
{
operator time24()
 {
  ...
  return time24(temp)   // error
 }
}

class time24
{
 ...
};

错误C2440:'':无法从'int'转换为'time24'

我还能如何返回对象以克服此错误

最佳答案

您将实现移到类定义之后的实现文件中:

//header.h
class time24;
class time12
{
    operator time24();
}

class time24
{
 ...
};

//implementation.cpp
#include "header.h"
time12::operator time24()
{
   return time24(temp)   // error
}

我假设您打算实现operator time24()

10-04 13:50