powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / игра с vector < vector .. как?
10 сообщений из 10, страница 1 из 1
игра с vector < vector .. как?
    #34975614
BagaBaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пусть есть
int i=10, j =20;

Тогда
vector <int> v(i)
vector < vector<int> > v
vector < vector<int> > v(i)

работают

а

vector < vector<int>(j) > v(i)

нет.
Вопрос: как указать обе размерности? (т.е. заставить работать последнюю строчку)
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34975652
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BagaBagaВопрос: как указать обе размерности?

Вектор параметризуется типом. Тип вектора имеет произвольное количество элементов. Следовательно, указать обе размерности нельзя.

Более того, vector<vector<> > не обязан быть матрицей, т.е. столбцы в каждом ряде могут иметь независимое количество значений.
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34976141
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BagaBagaПусть есть
int i=10, j =20;

Тогда
vector <int> v(i)
vector < vector<int> > v
vector < vector<int> > v(i)

работают

а

vector < vector<int>(j) > v(i)

нет.
Вопрос: как указать обе размерности? (т.е. заставить работать последнюю строчку)

Вы были на шаг от цели. Все очень просто:

Код: plaintext
1.
2.
3.
std::vector<std::vector<int> > v(i, std::vector<int>(j,  0 ));
for(size_t ii =  0 ; ii < i; ii++)
    for(size_t jj =  0 ; jj < j; jj++)
        assert(v[i][j] ==  0 );
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34976146
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
assert(v [j] == 0);
заменить на
assert(v[ii][jj] == 0);
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34979015
BagaBaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Анатолий Широков
Вы были на шаг от цели. Все очень просто:


Хотелось обойтись без циклов. Но спасибо.
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34979036
BagaBaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В том смысле, разве не будет порождено ислючение? (Ведь ассертом вы проверяете фактическое выделение памяти).
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34979161
Фотография blinded
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исключения не должно быть никогда.... Если память не выделена ошибка будет в строчке, прсто он демонстрирует что данные проинициализированы 0
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34979312
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BagaBaga Анатолий Широков
Вы были на шаг от цели. Все очень просто:


Хотелось обойтись без циклов. Но спасибо.

Я продемонстрировал, как вы с этой матрицей будете работать.
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34979442
Leshij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On Thu, 29 Nov 2007 16:19:53 +0300, BagaBaga <nospam@sql.ru>; wrote:

> Вопрос: как указать обе размерности? (т.е. заставить работать последнюю
> строчку)

У вектора есть конструктор, принимающий число элементов и значение, к-ое
будет присвоено каждому элементу.

vector(
size_type _Count,
const Type& _Val
);

То есть будет что-то типа

vector<vector<int> > v(n, vector<int>(m) )
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
игра с vector < vector .. как?
    #34979703
BagaBaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Анатолий Широков

Я продемонстрировал, как вы с этой матрицей будете работать.

Я это понял. Но успел до этого отправить пост (так что извиняюсь).

>>Leshij
Спасибо.
Всем спасибо.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / игра с vector < vector .. как?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]