Форум программистов, компьютерный форум CyberForum.ru

Критерий сортировки для set - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что можно возвратить из функции если нужный объект не создан http://www.cyberforum.ru/cpp-beginners/thread1531985.html
Добрый день! Есть функции, которые возвращают указатели на двумерные массивы, но заполнение и создание массива происходит после проверки выполнения условия (например, операции с матрицами - умножение вектора на матрицу; условие - равенство количества столбцов и количества элементов вектора). Если условие не выполняется, то и создание результирующего вектора не происходит. Что должна возвращать...
C++ Указать материалы, направление Доброго времени суток, прошу у Вас помощи. Мне нужна программа, которая взаимодействует с браузером. Мне 48 лет, когда то давным давно я изучал С++ по учебной программе своего ВУЗа (основы). Что именно мне нужно : есть сайт, на нем есть админка, в которой я регистрирую людей. Как можно связать функции написанные в Visual Studio в моем проекте, под действия хрома?) Мне нужна совсем простая... http://www.cyberforum.ru/cpp-beginners/thread1531981.html
C++ Вывести размер самой длинной строки
как вывести наибольшее кол-во символов через max не получается, и есть ли вообще такая функция "max" ? string a,b,c,f; cout <<"name"<<endl; cin >> a; cout <<"name"<<endl; cin >> b; cout <<"name"<<endl; cin >> c; cout <<"name"<<endl; cin >> f;
C++ Алгоритм DDA для черчения окружности
Добрый день. Может кто подсказать где я могу найти точное описание работы данного алгоритма? Для черчения прямых линий это я нашол и в инете куча инфы, а вот окружности тут как то глухо. Поделитесь ссылками по данной теме) Заранее спасибо.
C++ Разработка многомодульной программы с выделением подпрограмм http://www.cyberforum.ru/cpp-beginners/thread1531891.html
Помогите, пожалуйста, подкорректировать программу!!! Я ее написала, но когда проверяю на симметричность главной диагонали - и так, и так выполнятся условие. Как остановить программу, если условие не выполняется? Условие: Если целочисленная квадратная матрица А симметрична относительно главной диагонали, обнулить все элементы,лежащие выше главной диагонали, и определить сумму элементов,...
C++ Определить класс Vector Не могу понять оформление класса вектора. Перечитала лекцию, погуглила - инфы стало слишком много и я запуталась; все равно не могу понять, как правильно оформить описание вектора, если мне нужно реализовать методы сложения, вычитания и т.д. Объясните, пожалуйста, на пальцах или на примерах, потому что не могу сделать лабу. Спасибо. П 5.18. Правил Запрещено размещать задания и решения в виде... подробнее

Показать сообщение отдельно
IVSasha
6 / 6 / 2
Регистрация: 29.07.2015
Сообщений: 61

Критерий сортировки для set - C++

16.09.2015, 17:25. Просмотров 346. Ответов 5
Метки (Все метки)

Проблема в понимании этого оператора в main()
C++
1
IntSet c2(reverseOrder);
Вообще не могу понять что это такое. Кто объяснит?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include <iostream>
 
#include <set>
 
#include <algorithm>
#include <iterator>
 
// Тип критерия сортировки
template <class T>
class RuntimeCompare
{
public:
    enum CompareMode {normal, reverse};
    
private:
    CompareMode compareMode;
    
public:
    RuntimeCompare(CompareMode mode=normal)
        : compareMode(mode)
    {}
    
    bool operator()(const T &t1, const T &t2) const
    {
        return compareMode==normal ? t1<t2 : t2<t1;
    }
    
    bool operator==(const RuntimeCompare &rc) const
    {
        return compareMode == rc.compareMode;
    }
};
 
// Тип множества, использующего данный критерий сортировки
typedef std::set< int, RuntimeCompare<int> > IntSet;
 
void Fill(IntSet &c);
 
int main()
{
    // Создание, заполнение и вывод множества с обычным порядком следования
    // элементов - используется критерий сортировки по умолчанию
    IntSet c1;
    Fill(c1);
    
    // Создание критерия сортировки с обратным порядком следования элементов
    RuntimeCompare<int> reverseOrder( RuntimeCompare<int>::reverse );
    IntSet c2(reverseOrder);    // Что это вообще такое???
    Fill(c2);
 
    return 0;
}
 
void Fill(IntSet &c)
{
    c.insert(4);
    c.insert(7);
    c.insert(5);
    c.insert(3);
    c.insert(1);
    c.insert(6);
    c.insert(2);
    c.insert(5);
    // c: 1 2 3 4 5 6 7
    // или
    // c: 7 6 5 4 3 2 1
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru