0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|||||||||||
1 | |||||||||||
Ввод данных пока строка не пустая08.11.2016, 18:30. Показов 7294. Ответов 20
Метки нет (Все метки)
Задача такая: Создать класс билет, который содержит поля:фамилия, номер рейса, и вводить данные пока строка с фамилией не пустая.
Я создал класс, включил в него конструктор.
и в main пишу и потом программа вылетает. Как правильно выделить память под этот объект?
0
|
08.11.2016, 18:30 | |
Ответы с готовыми решениями:
20
Ввод чисел по одному в строке, пока не встретится пустая строка Добавлять строку в список до тех пор, пока не введена пустая строка Записывать строки в файл то тех пор, пока не будет введена пустая строка Вернуться к вводу если строка пустая (ввод через scanner) |
Хитрая блондиночка $)
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
|
|
08.11.2016, 18:33 | 2 |
0
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|
08.11.2016, 18:51 [ТС] | 3 |
Напутал все, я уже много способов пробовал как это исправить. Если обращаться через "->" то он всем значениям присваивает последние значения. Как это можно исправить? И еще вопрос, оператор new заново выделяет память под указатель или добавляет ее к уже имеющийся?(Если несколько раз его использовать)
0
|
Хитрая блондиночка $)
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
|
||||||
08.11.2016, 22:53 | 4 | |||||
Я имела ввиду другое:
0
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|
09.11.2016, 13:22 [ТС] | 5 |
Hikari, Мне нужен динамический массив.У меня не получается это реализовать, как это можно сделать?
0
|
Хитрая блондиночка $)
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
|
||||||
09.11.2016, 15:57 | 6 | |||||
Кхм... Хорошо, а почему тогда не хочешь на плюсах делать?
Например с коленки вот так:
0
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|
09.11.2016, 16:16 [ТС] | 7 |
Hikari,
Мы такое еще не изучали, а есть еще какой нибудь вариант? Через указатель и выделение под него памяти можно сделать?
0
|
61 / 47 / 22
Регистрация: 28.03.2016
Сообщений: 142
|
|
09.11.2016, 16:32 | 8 |
0
|
Хитрая блондиночка $)
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
|
|
09.11.2016, 17:03 | 9 |
Ужас какой... Дают плюсы не давая никаких плюсов.
А хоть динамический список изучали?
0
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|
09.11.2016, 17:50 [ТС] | 10 |
Hikari, Были списки, но очень поверхностно
0
|
Хитрая блондиночка $)
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
|
|
09.11.2016, 18:17 | 11 |
Пффф... Тогда не надейся. Без списков или динамического массива не решить.
А как перестраивать массив вас врядли учили.
0
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|
09.11.2016, 18:29 [ТС] | 12 |
Hikari, Так динамический массив был или это тоже самое что динамический список?
0
|
Хитрая блондиночка $)
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
|
|||||||||||
09.11.2016, 19:43 | 13 | ||||||||||
Нет. Это не тоже самое.
Под динамическим массивом я подразумеваю обычный массив который: 1) При подкидывании к нему нового элемента пересоздается заново с ячейкой для уже имеющихся элементов 2) Массив задается частями слябами, по заполнению сляба в его последнюю ячейку записывается адрес на новый сляб. Не знаю как попроще объяснить, меня так учили. Первое может выглядеть так:
1
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|
10.11.2016, 12:57 [ТС] | 14 |
Hikari, Спасибо, буду разбираться дальше
0
|
Форумчанин
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|||||||||||
10.11.2016, 13:58 | 15 | ||||||||||
POWERR, если количество элементов не должно увеличиваться по ходу работы программы, вам динамический список не нужен.
Если известно количество элементов на стадии компиляции - подойдет обычный массив (Type[]). Если количество вводиться с клавиатуры, а потом не меняется - используйте динамический массив (new Type[]). Если количество заранее неизвестно - можно использовать расширяющийся динамический массив (std::vector), либо список(std::list). Если STL нельзя, то писать ручками. В этом плане список, конечно, попроще. Добавлено через 5 минут
Возможно, проще для понимания будет такой переписанный вариант:
Кстати, меняется на список (std::list) с помощью замены всего лишь в объявлении контейнера (и загол. файле)
1
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
||||||
17.11.2016, 16:43 [ТС] | 16 | |||||
bilet()- конструктор.define() - функция для ввода своих значений.
Программа не дает 2-ой раз ввести фамилию и после второй строчки заканчивает работать, почему?
0
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
||||||
17.11.2016, 16:55 [ТС] | 18 | |||||
0
|
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 28
|
|
17.11.2016, 22:32 [ТС] | 20 |
MrGluck, А почему если в первый раз в фамилию ввести всего один символ,то программа завершается, а если дальше вводить туда один символ, то все работает?
0
|
17.11.2016, 22:32 | |
17.11.2016, 22:32 | |
Помогаю со студенческими работами здесь
20
При занесении данных в файл сначала создаётся пустая строка При загрузке данных из БД в Memo постоянно появляется пустая строка в конце Datagridview как узнать, что текущая строка последняя (пустая для ввода новых данных пользователем) Строка: Организовать ввод строковых значений до тех пор, пока пользователь не введет слово "хватит". Как сделать чтобы в "dataGridView" была постоянно пустая строка для ввода данных? Ввод с клавиатуры - требовать у пользователя ввод, пока он не будет корректным Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |