Не так часто я работаю на C++, и я столкнулся с простой ошибкой, которая удерживает меня.C++ заголовок/файл реализации и перегруженные операторы
В Xcode У меня есть следующие две ошибки: In Event.h: Control reaches end of non-void function
In Event.cpp: Overloaded operator must have at least one argument of class or enumeration
Обе ошибки в линии подписи метода для
bool operator() (Event *left, Event *right)
Здесь являются файлами .h и .cpp во всей их полноте (не так уж и много): Event.h
#ifndef __EventSimulation__EventComparison__
#define __EventSimulation__EventComparison__
#include <iostream>
#include "Event.h"
class EventComparison {
public:
bool operator() (Event *left, Event *right){}
};
#endif
Event.cpp
#include "EventComparison.h"
#include "Event.h"
bool operator() (Event *left, Event *right) {
return left->time > right->time;
}
Может кто-то пожалуйста, помогите мне исправить эту ошибку и объяснить, что/почему вещи выдают ошибку компиляции, и как избежать этого в функции. Спасибо за вашу помощь!
Вы упускаете разрешения области видимости в вашем определении. – Freddy