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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
#1

sort для своего типа данных - C++

23.02.2012, 15:37. Просмотров 349. Ответов 1
Метки нет (Все метки)

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
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
class foo
{
public:
    foo() : v(0) {}
    void setV(int _v) { v = _v;}
    int getV() const {return v;}
    bool operator< (foo&);
private:
    int v;
};
 
bool foo::operator< (foo& f)
{
    return v < f.v;
}
 
int main()
{
    const int n = 5;
    vector<foo> v(n);
    for(int i = 0; i < n; i++)
        v[i].setV(rand()%20);
    sort(v.begin(), v.end());
    for(int i = 0; i < n; i++)
        cout << v[i].getV() << " ";
    return 0;
}
я неправильно перегрузил оператор сравнения или что?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2012, 15:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос sort для своего типа данных (C++):

Использование vector insert и своего типа данных - C++
Не понимаю почему вот здесь выскакивает странная ошибка: arr.insert(arr.begin(),(*max)); #include &lt;iostream&gt; #include &lt;iterator&gt; ...

Объявление переменной своего типа - C++
Есть код #include &lt;iostream&gt; #include &lt;iomanip&gt; //#include &quot;complexz&quot; using namespace std; int main(){ double a,b,c,d; ...

Как вывести vector своего типа? - C++
Суть вот в чем, допустим нужно создать класс Name_value, который хранит строку и число, занести все это дело в вектор так, чтоб получился...

Считывание типа данных для шаблона - C++
Добрый день. Вопрос простой и состоит в следующем. Есть шаблон класса. Хочу чтобы пользователь вводил сам тип данных для своего будущего...

Реализовать библиотеку для типа данных float16 - C++
Задача: реализовать библиотеку для типа данных float16 (half float) и функционал конвертации float32 в float16 и обратно. Так же...

Есть ли функция для печати типа данных ? - C++
Пример char* a; cout&lt;&lt;функция(a); Окно консоли: char*

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
retmas
Жарю без масла
859 / 741 / 164
Регистрация: 13.01.2012
Сообщений: 1,694
23.02.2012, 15:41 #2
если член класса, то
C++
1
bool operator<(const foo&) const
но я бы определил как свободную ф-ю
C++
1
2
3
4
bool foo::operator<(const foo& f1, const foo& f2)
{
        return f1.getV() < f2.getV();
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2012, 15:41
Привет! Вот еще темы с ответами:

Создание типа данных для чисел определенного размера - C++
Здравствуйте. Столкнулся с проблемой работы с большими числами на разных архитектурах. На х64 размер long = 8. На х32 = 4. Мне нужно что бы...

Реализуйте АТД “Список” для любого типа данных - C++
Помогите решить задачку. 1. Реализуйте АТД “Список” для любого типа данных и его операторы (INSERT, LOCATE, RETRIEVE, DELETE, NEXT,...

Реализовать функции для проверки битового представления типа данных - C++
Для типа данных int Необходимо реализовать функции для: 1. Проверки битового представления типа данных. Функция должна возвращать...

Как задать границу для типа данных unsigned char*? - C++
У меня есть двумерный массив значений типа unsigned char*, диапазон значений которого 0 - 255. Как задать условие, чтобы при увеличении на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru