Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
kekAleshkins
0 / 0 / 0
Регистрация: 22.12.2017
Сообщений: 7
1

Ошибка: отсутствуют экземпляры перегруженной функции “sort”

22.12.2018, 10:44. Просмотров 298. Ответов 3

В 6.3 пишет «отсутствуют экземпляры перегруженная функция “sort”

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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
#include <iostream>
#include <algorithm>
#include <fstream>
#include <iterator>
 
#include <numeric>
#include <functional>
 
using namespace std;
int kv(int x) { // квадрат числа
 
    return (x + 5)*(x + 5);
 
}
 
int sozd(int x) {  // это генерация чисел в массив От -50до50
 
    return -50 + rand() % 100;
 
}
 
void nechet(int x) { // проверка элемента на нечётность
 
    if (x % 2 != 0) cout << x << " ";
 
}
 
void modal(int x) //эти функции и проверяют условия
{
    cout << abs(x) << " ";
}
bool modal(int x, int y)
{
    return (abs(x) > abs(y));
}
void main() {
    //6.1
    setlocale(0, "");
 
    const int n = 10;
 
    int a[n] = { 0 };
 
    transform(a, a + n, a, sozd);//запись в массив а рандомных чисел от -50 до 50   
 
    copy(a, a + n, ostream_iterator<int>(cout, " ")); //вывод на экран
 
    cout << endl;
 
    int b[n] = { 0 };
 
 
    copy(b, b + n, ostream_iterator<int>(cout, " ")); //вывод на экран
    cout << endl;
 
    copy(a, a + n, b);//копирование эл-тов из а в б
    copy(b, b + n, ostream_iterator<int>(cout, " ")); //вывод на экран
    cout << endl;
    transform(b, b + n, b, kv);//увеличение кажого элемента на 5 и возведение каждого в квадрат
    copy(b, b + n, ostream_iterator<int>(cout, " ")); //вывод на экран
    cout << endl;
    cout << "Нечетные числа:" << endl;
    for_each(b, b + n, nechet);//выввод на экран нечетных элементов 
    cout << endl;
 
 
    //6.2
    int a2[n];
    cout << "Введите " << n << " чисел массива" << endl;
    for (int i = 0; i<n; i++)
        cin >> a2[i];
    cout << "Введите число:" << endl;
    cout << "Введите элемент, который нужно удалить:" << endl;
    int e1;
    cin >> e1;
    cout << "Введите элемент, после которого удалить тот элемент:" << endl;
    int e2;
    cin >> e2;
    int *iter = find(a2, a2 + n, e2);//устанваливаем указатель не элемент е2 
    if (iter == a2 + n) cout << "Такого числа нет" << endl;
    else
    {
        int *new_end = remove(iter, a2 + n, e1);//удаление элемента е1, который находится после элемента е2
        copy(a2, new_end, ostream_iterator<int>(cout, " ")); //вывод на экран
        copy(iter, a2 + n, ostream_iterator<int>(cout, " "));
    }
    cout << endl;
    cout << "_________________________________________________" << endl;
    
    //6.3
 
    int a3[n];
    int b3[n];
    ifstream in;
    in.kven("a3.txt");
    if (in)
    {
        while (!in.eof())
        {
 
            for (int i = 0; i<n; i++) in >> a3[i];
 
            for (int i = 0; i<n; i++) in >> b3[i];
        }
        in.close();
    }
    sort(a3, a3 + n, modal);//сортировка по увеличению модулей элементов массива а3
    copy(a3, a3 + n, ostream_iterator<int>(cout, " ")); //вывод на экран
    cout << endl;
    sort(b3, b3 + n, modal);//сортировка по увеличению модулей элементов массива б3
    copy(b3, b3 + n, ostream_iterator<int>(cout, " ")); //вывод на экран
    cout << endl;
    int *z = new int[2 * n]; //указатель на начало массива z
        merge(a3, a3 + n, b3, b3 + n, z, modal);//слияние массивов а и б в z и последующая сортировка по увеличению модулей элементов
    copy(z, z + 2 * n, ostream_iterator<int>(cout, " ")); //вывод на экран
    system("pause");
}
0
Миниатюры
Ошибка: отсутствуют экземпляры перегруженной функции “sort”  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2018, 10:44
Ответы с готовыми решениями:

Ошибка: E0304 отсутствуют экземпляры перегруженной функции, соответствующие списку аргументов stiff_system...
std::vector&lt;std::function&lt;double(double, double, double, double, double, double) &gt;&gt; vfunc;...

Отсутствуют экземпляры перегруженной функции modf
#include &lt;iostream&gt;; #include &lt;conio.h&gt;; #include &lt;cmath&gt;; int main() { using namespace...

Отсутствуют экземпляры перегруженной функции getline
не могу решить проблему #define _CRT_SECURE_NO_WARNINGS #include &quot;stdafx.h&quot; #include &quot;conio.h&quot;...

Отсутствуют экземпляры перегруженной функции log10 и log (фото ниже) - C++
Отсутствуют экземпляры перегруженной функции log10 и log(фото ниже),выбивает эту ошибку.В чем...

Отсутствуют экземпляры перегруженной функции "modf", соответствующие списку аргументов
в чем причина #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; int bin(double dex)...

3
nonedark2008
1210 / 896 / 271
Регистрация: 28.07.2012
Сообщений: 2,492
22.12.2018, 11:38 2
Цитата Сообщение от kekAleshkins Посмотреть сообщение
sort(a3, a3 + n, modal);
Компилятор не понимает, какую из двух имеющихся функций modal ты имел ввиду.
0
zss
Модератор
Эксперт С++
8094 / 7232 / 4504
Регистрация: 18.12.2011
Сообщений: 19,121
Завершенные тесты: 1
22.12.2018, 11:49 3
Цитата Сообщение от kekAleshkins Посмотреть сообщение
void modal(int x) //эти функции и проверяют условия
Цитата Сообщение от kekAleshkins Посмотреть сообщение
bool modal(int x, int y)
Из-за этого и проблема в sort.
Переименуйте одну из них.

А вот с ошибкой
Ошибка C4996 'std::merge::_Unchecked_iterators::_Deprecate': Call to 'std::merge' with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' test d:\program files\vc ide\vc\tools\msvc\14.14.26428\include\algorithm 3281
я не знаю, как справиться.
C++
1
#define D_SCL_SECURE_NO_WARNINGS
не помогает
0
nonedark2008
1210 / 896 / 271
Регистрация: 28.07.2012
Сообщений: 2,492
22.12.2018, 13:28 4
Цитата Сообщение от zss Посмотреть сообщение
#define D_SCL_SECURE_NO_WARNINGS
C++
1
#define _SCL_SECURE_NO_WARNINGS
1
22.12.2018, 13:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2018, 13:28

Отсутствуют экземпляры перегруженная функция sort
#include&lt;iostream&gt; #include&lt;string&gt; #include&lt;vector&gt; #include&lt;algorithm&gt; #include&lt;cmath&gt;...

Ошибка: отсутствуют экземпляры шаблон функции
Всем доброго времени суток. Решил отработать на практике алгоритм быстрой сортировки и столкнулся...

Ошибка в шаблоне функции: "Отсутствуют экземпляры шаблон функции, соответствующие списку аргументов"
#include &lt;iostream&gt; #include &lt;iterator&gt; #include &lt;map&gt; #include &lt;Windows.h&gt; #include...


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

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

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