Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 29.01.2017
Сообщений: 2

Как правильно писать структуры

29.01.2017, 21:07. Показов 1950. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Прошу помощи в редактировании кода: (фрагменты)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct vitaya_para {
    int a;
    int b;
    int c;
};
int main(){ 
set <vitaya_para> myset;
 
 
                    myset.insert( { arr[a],arr[b],arr[c] } );
                    myset.insert( { arr[a],arr[c],arr[b] } );
                    myset.insert( { arr[b],arr[a],arr[c] } );
                    myset.insert( { arr[b],arr[c],arr[a] } );
                    myset.insert( { arr[c],arr[a],arr[b] } );
                    myset.insert( { arr[c],arr[b],arr[a] } );
arr имеет int-овый тип;
a,b и c intы


*Ошибку выдает в строчке объявления myset
}
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.01.2017, 21:07
Ответы с готовыми решениями:

Как на писать правильно ?
В одномерном массиве, состоящем из N вещественных элементов, вычислить: 1) Сумму положительных элементов массива 2) ...

Как правильно писать говнокод?
теорию я знаю, а практики маловато( поделитесь опытом

Как правильно писать наследование
есть 5 файлов: main.cpp; List.h;List.cpp DoubleList.h DoubleList.cpp - который унаследован от класса List и тут я подумал, а по...

4
7 / 7 / 9
Регистрация: 31.01.2016
Сообщений: 27
29.01.2017, 21:54
Подключил ли
C++
1
#include <set>
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
29.01.2017, 21:56
C++
1
2
3
4
5
typedef struct  {
    int a;
    int b;
    int c;
} vitaya_para;
0
0 / 0 / 0
Регистрация: 29.01.2017
Сообщений: 2
29.01.2017, 22:11  [ТС]
Да, подключил

Добавлено через 42 секунды
Не в этом проблема, но все равно спасибо,
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
29.01.2017, 22:27
Лучший ответ Сообщение было отмечено sun_is_shining как решение

Решение

sun_is_shining,
std::set реализует бинарное дерево. Для корректного размещения элементов в дереве, нужна возможность сравнивать его элементы при помощи оператора сравнения. Ваши структуры не подходят для компаратора, который используется по умолчанию. Для того что бы это работало со структурами нужно предоставить множеству свой компаратор.

Например
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
#include <iostream>
#include <set>
 
 
struct vitaya_para {
    int a;
    int b;
    int c;
};
 
struct cmp
{
    bool operator()(const vitaya_para& lhs, const vitaya_para& rhs)
    {
       return lhs.a < rhs.a;
    }
};
 
 
int main()
{
    std::set<vitaya_para, cmp> pair;
    pair.insert({
        {1,2,3},
        {4,5,6}
    });   
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.01.2017, 22:27
Помогаю со студенческими работами здесь

Как правильно писать программы
Можете подсказать какую-нибудь книгу или способ как можно научиться правильно создавать программы в плане их структуры, где может быть...

TMemoryStream & Struct, как читать/писать структуры из/в поток?
на ++ пытаюсь перейти недавно... на С, задача была тривиальной и решена давно, но по обстоятельствам нужно перенести на С++. на...

как такое правильно писать? это ссылка на указатель?
#include &lt;iostream&gt; using namespace std; char *chch2 = &quot;hello&quot;; char*&amp; f() { char *&amp;chch3 = chch2; return...

Обьясните где ошибка , и как правильно писать программу!
Дано натуральное число N и вещества х. Вычислить S=∑_(k=1)^N a_k,a_k=√(x^2+〖sin〗^2*k п/4) а вот уже пример из самого алгоритма...

Как правильно сделать компаратор для структуры
Добрго времени суток! Есть структруа: struct Pupil //Структура представляющая собой ученика. { int cl_number; ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru