Существуют ли исключения для типов, в которых не может быть перегружен оператор присваивания?
В частности, я хочу перегрузить оператор присваивания struct tm (из time.h), чтобы я мог назначить ему sql :: ResultSet.
У меня уже есть логика преобразования:
sscanf(sqlresult->getString("StoredAt").c_str(), "%d-%d-%d %d:%d:%d",
&TempTimeStruct->tm_year, &TempTimeStruct->tm_mon, &TempTimeStruct->tm_mday,
&TempTimeStruct->tm_hour, &TempTimeStruct->tm_min, &TempTimeStruct->tm_sec);
Я попробовал перегрузку с этим:
tm& tm::operator=(sql::ResultSet & results)
{
/*CODE*/
return *this;
}
Однако VS08 сообщает:
ошибка C2511: 'tm & tm :: operator = (sql :: ResultSet &)': перегруженная функция-член не найдена в 'tm'