Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 24

Работа с STL list + пропись List.h

18.11.2014, 19:54. Показов 3300. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Помогите, пожалуйста, разобраться с STL list.
Нужно сделать программу в которой будет содержаться класс Student, прописать добавление, изменение, удаление и поиск. List прописать самим.
как прописывать лист вообще понятия не имею, пытаюсь сделать добавление, но успехи практически никакие((
С числами все получается (list <int> L, если не прописывать лист, а вот с классом ничего не выходит(
Помогите!Или дайте аналогичный пример именно с классом

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
#include "stdafx.h"
#include <iostream>
#include <list>
#include <conio.h>
 
using namespace std;
class Student;
 
typedef list <Student> L;
typedef list <Student>::iterator it;
typedef list <Student>::const_iterator c_it;
 
class Student
{
    char* FIO, *faculty;
    int age;
public:
    Student()
    {
        FIO = new char[10];
        faculty = new char[8];
        put_info();
    }
    void show(const L & List)
    {
        for(c_it iSt = List.begin(); iSt != List.end(); ++iSt)
        {
            cout<<"ФИО "<<iSt->FIO<<endl;
            cout<<"Факультет "<<iSt->faculty<<endl;
            cout<<" AGE "<<iSt->age<<endl;
        }
    }
    Student put_info()
    {
        cout<<"ФИО \n";
        cin>>FIO;
        cout<<"AGE \n";
        cin>>age;
        cout<<"Факультет \n";
        cin>>faculty;
        return s;
    }
    
    ~Student()
    {
        delete FIO;
    }
}s;
 
 
void main()
{
    setlocale(LC_ALL, "Ru");
    Student S;
    L p;
 
    p.push_back(S);
    S.put_info();
    p.push_front(S);
 
    _getch();
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.11.2014, 19:54
Ответы с готовыми решениями:

Работа с STL list
Есть некий каталог с 3 переменными (string,string,int), который нужно хранить в list Как я понимаю есть 2 решения хранения. 1....

Работа с STL <list>
В общем, есть текст, программа выделяет в тексте последовательность введённую с клавиатуры(выделяет скобками {}) Например выделить...

Работа с двунаправленым списком. STL <list>
Помогите пожалуста найти ошибку.. 3) Даны натуральное число n, действительные числа x1,x2,....,xn . Вычислить: x1*xn+x2*xn-1+...+xn*x1...

28
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 24
21.11.2014, 19:48  [ТС]
Студворк — интернет-сервис помощи студентам
нет, чтобы можно было выводить
не cout<<*i;
a cout<<t; // L t;
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
21.11.2014, 19:54
Т. е. чтобы весь список выводить разом без цикла?
0
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 24
21.11.2014, 19:56  [ТС]
Ага
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
21.11.2014, 20:00
В таком виде не получится. Надо свой какой-то класс описывать.
0
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 24
21.11.2014, 20:07  [ТС]
Может вы подскажете как произвести поиск, допустим по имени?
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
21.11.2014, 20:10
Ну так же в цикле с итератором. Проверяешь условие для каждого.
1
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 24
22.11.2014, 02:56  [ТС]
Подскажите, пожалуйста, а как записать содержимое контейнера в текстовый файл?
Я понимаю, что через итераторы, но как это реализовать не пойму(
0
 Аватар для Nosey
1379 / 406 / 144
Регистрация: 22.10.2014
Сообщений: 872
22.11.2014, 04:04
Цитата Сообщение от Marry9 Посмотреть сообщение
Подскажите, пожалуйста, а как записать содержимое контейнера в текстовый файл?
Я понимаю, что через итераторы, но как это реализовать не пойму(
При описанном:
C++
1
friend ostream & operator << (ostream &os, const Student &st)
Вот так:
C++
1
2
3
4
5
6
7
8
9
10
#include <fstream>
........
........
 
    std::ofstream outStreamFile("output.txt");
 
    for (L::iterator i = t.begin(); i != t.end(); ++i)
    {
        outStreamFile << *i << std::endl;
    }
1
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 24
03.12.2014, 08:44  [ТС]
Скажите, а как тогда считать информацию с этого же файла?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.12.2014, 08:44

Работа с STL. Поменять vector на list
Программа должна быть написана так, чтобы достаточно было заменить в одном месте vector на list и приложение делало все то же самое. Если...

List STL
В общем нужно создать класс STL c помощью list: CStudent.h #include &lt;string&gt; using namespace std; enum number_type{G1, G2,...

STL list
Доброго времени суток, пока имею поверхностное представление о алгоритмах STL и функциях для контейнеров, но есть задача: требуется...

STL list
как вставить элемент в середину списка list STL? float list_insert_rand(int num) { srand (time(NULL)); int rand_num, rand_pos; ...

STL List
Вот в чем проблема, была дана задача, решить которую надо было с помощью Deque и List, Deque надобыло оформить через STL, а List написать...


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

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru