ОБНОВЛЕНО С FIXЧеткое количество строк в массиве
Я хочу вернуть только количество уникальных записей в моем массиве. Массив содержит строковую переменную, представляющую IP-адрес. Если их 10, но из 3-х разных видов, я просто хочу вернуться. 3. Я был на этом весь день и не могу найти решение, которое работает. Мой код:
Оригинальный код
int getUnique(Visitors info[], string url, string startDate, string endDate){
int count = 0;
string temp;
for(int i = 0 ; i < N ; i++){
if(url == info[i].URL && (dateChecker(startDate, endDate, info[i].dateAccessed))){
}
}
return count;
}
Обновленный код
int getUnique(Visitors info[], string url, string startDate, string endDate){
set<string> ips;
for(int i = 0 ; i < N ; i++){
if(url == info[i].URL && (dateChecker(startDate, endDate, info[i].dateAccessed))){
ips.insert(info[i].IP);
}
}
return ips.size();
}
Первый, если проверяет, поддерживает ли соответствующий URL на самом деле матч, и dateChecker
просто убеждается, что дата, когда конкретный IP-адрес отправился на этот URL, находится между двумя прошедшими датами (startDate
и endDate
). Как я могу получить количество разных IP-адресов в этих условиях?
Вы не должны изменять исходный вопрос с помощью исправления, иначе читатели, которые приходят позже, не поймут, что произошло. В общем, вы хотите добавить раздел редактирования в конец своего вопроса. –
Отредактировал вопрос, чтобы показать как оригинальный, так и «фиксированный» код. –