Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.89
Jоker
4 / 4 / 0
Регистрация: 12.12.2011
Сообщений: 107
#1

Cоздание неизвестное заранее количество переменных - C++

20.01.2012, 18:46. Просмотров 2679. Ответов 35
Метки нет (Все метки)

Здравствуйте. Как осуществить создание неизвестное заранее количество переменных?
Например пользователь вводит число k, а программа создает k переменных.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.01.2012, 18:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Cоздание неизвестное заранее количество переменных (C++):

Как принять заранее неизвестное количество аргументов и передать их в конструктор? - C++
Допустим есть функция которая создает объект template<typename T> T* createObject(typename ...params) { return new...

Неизвестное количество переменных в функции - C++
Гуру, подскажите пожалуйста куда копать! Нужна функция, которая работает с формат-строкой и переменными. Примерно это выглядит так: ...

Как передать в функцию заранее неизвестное число параметров? - C++
как передать в функцию "func" разное число параметров? писать для каждого перегрузку, или можно передать array int??

Неизвестное количество строк в двумерном массиве - C++
Как обеспечить ввод неограчиненного числа строк, который прекращается, к примеру, пустой строкой или специальным символом? #include...

как сделать неизвестное количество вложенных циклов - C++
в программу будет вводиться n-ное число, это самое число циклов со счетчиком, т. е. for (t=1; t<=v; ++t) for (t=1; t<=v; ++t) ...

Сколько выделить памяти, если заранее неизвестно количество вложенных классов - C++
#include <iostream> #include <locale> #include <fstream> #include <string> #include <vector> #include <stdio.h> #include...

35
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 19:32 #16
Jоker, в Си есть возможность создания массива переменной длины. Но это к слову. Лучше выделить сколько необходимо памяти динамический.
0
Jоker
4 / 4 / 0
Регистрация: 12.12.2011
Сообщений: 107
20.01.2012, 19:34  [ТС] #17
Цитата Сообщение от go Посмотреть сообщение
Лучше выделить сколько необходимо памяти динамический.
не совсем понял
0
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 19:36 #18
Цитата Сообщение от go Посмотреть сообщение
Jоker, в Си есть возможность создания массива переменной длины.
можно пример ???
0
silent_1991
Эксперт С++
4997 / 3055 / 149
Регистрация: 11.11.2009
Сообщений: 7,040
Завершенные тесты: 1
20.01.2012, 19:37 #19
Melkor, полагаю, речь идёт про С99, а именно var-length arrays.
0
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 19:39 #20
Цитата Сообщение от Melkor Посмотреть сообщение
можно пример ???
http://ru.wikipedia.org/wiki/C99
http://liveworkspace.org/code/b8ec7301cf7de14537079fe39b1dd280

Добавлено через 1 минуту
Цитата Сообщение от silent_1991 Посмотреть сообщение
полагаю, речь идёт
Да
1
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 19:44 #21
go, спасибо интересная весчь. (извините за необразованность, но пишу на плюсах и чистым си не интересовалсо)
0
Jоker
4 / 4 / 0
Регистрация: 12.12.2011
Сообщений: 107
20.01.2012, 19:46  [ТС] #22
а можно увеличить размер уже созданного массива?
0
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 19:48 #23
Цитата Сообщение от Jоker Посмотреть сообщение
а можно увеличить размер уже созданного массива?
в плюсах нет, разве что ты будешь пользовацо вектором, тогда проблеммы с выделением памяти тебя заботить небудут.
0
Jоker
4 / 4 / 0
Регистрация: 12.12.2011
Сообщений: 107
20.01.2012, 19:49  [ТС] #24
Цитата Сообщение от Melkor Посмотреть сообщение
в плюсах нет, разве что ты будешь пользовацо вектором, тогда проблеммы с выделением памяти тебя заботить небудут.
Вектором?
0
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 19:52 #25
Цитата Сообщение от Jоker Посмотреть сообщение
Вектором?
Да.
Цитата Сообщение от Melkor Посмотреть сообщение
в плюсах нет,
Да, подобной функции realloc нет, но можно ведь ухитриться. Выделить новую память. Скопировать, и освободить старую
1
Jоker
4 / 4 / 0
Регистрация: 12.12.2011
Сообщений: 107
20.01.2012, 19:55  [ТС] #26
можно удалить отдельный элемент массива?
0
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 19:56 #27
Цитата Сообщение от go Посмотреть сообщение
но можно ведь ухитриться.
ну зачем же изобретать велосипед ???
0
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 19:58 #28
Цитата Сообщение от Jоker Посмотреть сообщение
можно удалить отдельный элемент массива?
Да. http://www.cplusplus.com/reference/stl/vector/erase/
0
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 19:58 #29
Цитата Сообщение от Jоker Посмотреть сообщение
можно удалить отдельный элемент массива?
опять таки вектор тебе в помощь
0
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 19:59 #30
Цитата Сообщение от Melkor Посмотреть сообщение
ну зачем же изобретать велосипед ???
А как еще? Если вектором не хотите
0
20.01.2012, 19:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2012, 19:59
Привет! Вот еще темы с ответами:

Как захватить динамически память, не зная заранее, какое количество памяти надо? - C++
задание Считайте все записи из файла "6.dat". Для чтения каждой отдельной записи осуществите динамический захват памяти. Предполагается,...

Cоздание простой игры - C++
я знаю как создать движок игре а как реализовать графику без DirectX opengl qt ...cделать черно белую игру ?????

Cоздание итератора с использованием шаблонов - C++
Привет всем! Возникла следующая проблема в шаблонной функции класса возникоет следующая проблемма: expected `;' before 'p' ...

Cоздание проги с заголовочным файлом - C++
У меня не получается создать простейшую программку с заголовочным файлом. Я создаю заголовочный файл my.h к примеру такой: void...


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

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

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