stable_sort сохраняет относительный порядок равных
cout << "\n\n";
// отсортировать элементы
// stable_sort сохраняет относительный порядок равных элементов
stable_sort( texts.begin(), texts.end(), LessThan() );
for_each( texts.begin(), texts.end(), PrintElem() );
cout << "\n\n";
// подсчитать число строк, длина которых больше 6
int cnt = 0;
// устаревшая форма count - в стандарте используется другая
count_if( texts.begin(), texts.end(), GreaterThan(), cnt );
cout << "Number of words greater than length six are "
<< cnt << endl;
static string rw[] = { "and", "if", "or", "but", "the" };
vector<string,allocator> remove_words( rw, rw+5 );
vector<string, allocator>::iterator it2 = remove_words.begin();
for ( ; it2 != remove_words.end(); ++it2 )
{
int cnt = 0;
// устаревшая форма count - в стандарте используется другая
count( texts.begin(), texts.end(), *it2, cnt );
cout << cnt << " instances removed: "
<< (*it2) << endl;
texts.erase(
remove(texts.begin(),texts.end(),*it2),
texts.end()
);
}
cout << "\n\n";
for_each( texts.begin(), texts.end(), PrintElem() );
}
// difference_type - это тип, с помощью которого можно хранить результат
// вычитания двух итераторов одного и того же контейнера
// - в данном случае вектора строк ...
// обычно это предполагается по умолчанию
typedef vector<string,allocator>::difference_type diff_type;
// предшествующий принятию стандарта синтаксис для <fstream>
#include <fstream.h>
main()
{
vector<textwords, allocator> sample;
vector<string,allocator> t1, t2;
string t1fn, t2fn;
// запросить у пользователя имена входных файлов ...
Содержание Назад Вперед