Я попытался перегрузить функцию std :: find следующим образом:
include <list>
include <string>
include "Marker.h"
namespace Test {
class MarkerContainer {
private:
std::list<Marker*> list;
double end_t;
inline bool exists(std::list<Marker*> *input_list, Marker* check);
public:
MarkerContainer();
MarkerContainer(double end_time);
bool addMarker(Marker* input);
double computeBeatTime(double sample_t);
double computeSampleTime(double beat_t);
void printAll();
};
}
std::list<Ableton::Marker*>::iterator std::find(std::list<Ableton::Marker*>::iterator first, std::list<Ableton::Marker*>::iterator last, Ableton::Marker* value){
for ( ;first!=last; first++) if ( **first==*value ) break;
return first;
}
Но я ловлю эту ошибку компилятора:
Вне строки определение 'find' не соответствует ни одному объявлению в
пространство имен 'std' в /Users/.../MarkerContainer.h
Я надеюсь, что совершил какую-то глупую ошибку, и то, что я хотел бы сделать, это просто ... любая идея?
Заранее спасибо!
Pietro