Есть класс считывания данные из файла выполненный через итератор:
template <typename IData>
class CExtractorIterator : public std::iterator<std::input_iterator_tag, IData>
чтобы можно было считывать данные через итераторы и for
:
for (CExtractor<IExtractorData>::iterator it = extractor.begin(); it != extractor.end(); ++it)
В классе CExtractorIterator
есть такой метод:
template <typename IData>
typename CExtractorIterator<IData>::reference
CExtractorIterator<IData>::operator*
() const
{
return *(IData*)(m_extractor->m_fileBuffer + sizeof(IData) * m_extractor->m_localRecordIndex);
}
Все работало замечательно, пока не применил инструкцию для компиляции /std:c++17
, чтобы можно было использовать std::filesystem::create_directory
(иначе компилятор упорно не видел
И в результате появилась ошибка:
Severity Code Description Project File Line Suppression State Error C2244 'CExtractorIterator::operator *': unable to match function definition to an existing declaration traffic extractor.h 95
Подскажите в чем ошибка - что-то не понимаю на ночь глядя :(
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Что такое Array of Structure, Structure of Array, Structure of Structure ? Когда использовать?
Проблема в приведении типов при попытке написать код для WinAPIПрограмма простенькая, для вывода таблицы умножения