Форум программистов, компьютерный форум CyberForum.ru

как передавать структуру в массив? - C++

Восстановить пароль Регистрация
 
shax624
8 / 8 / 2
Регистрация: 09.03.2012
Сообщений: 94
24.02.2013, 10:58     как передавать структуру в массив? #1
А заполнять его как обычный массив??? через цикл?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2013, 10:58     как передавать структуру в массив?
Посмотрите здесь:

C++ Можно ли представить структуру как элемент массива, т е массив состоящий из однотипных структур
C++ Как передавать ссылку на структуру в map?
Как сделать ассоциативный массив с указателем на структуру? C++
Как передавать массив по ссылке, чтобы не работала копия массива? C++
Как преобразовать структуру в javascript массив C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NIch
 Аватар для NIch
399 / 310 / 27
Регистрация: 17.03.2010
Сообщений: 1,120
24.02.2013, 11:11     как передавать структуру в массив? #2
Да.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
struct TMyStruct{
  int a;
};
 
int main(){
  int n = 10;
  
  TMyStruct *MyStruct = new TMyStruct[n];
 
  for(int i = 0; i < n; i++)
    MyStruct[i]->a = i;
 
  delete [] MyStruct;
}
shax624
8 / 8 / 2
Регистрация: 09.03.2012
Сообщений: 94
24.02.2013, 11:23  [ТС]     как передавать структуру в массив? #3
Почему -> а не точка?

Добавлено через 6 минут
из за того что структура через указатель объявлена ?
NIch
 Аватар для NIch
399 / 310 / 27
Регистрация: 17.03.2010
Сообщений: 1,120
24.02.2013, 11:23     как передавать структуру в массив? #4
Точка - когда это массив структур, а тут динамический массив, т.е. массив указателей.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct TMyStruct{
  int a;
};
 
int main(){
  TMyStruct MyStruct1;                           // Создание структуры
  
  TMyStruct *MyStruct2 = new TMyStruct; // Создание указателя на структуру
 
  MyStruct1.a = 100;
  
  MyStruct2-> = 100;
 
  delete MyStruct2;
}
shax624
8 / 8 / 2
Регистрация: 09.03.2012
Сообщений: 94
24.02.2013, 11:26  [ТС]     как передавать структуру в массив? #5
спасибо
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
28.02.2013, 12:22     как передавать структуру в массив? #6
Цитата Сообщение от shax624 Посмотреть сообщение
Почему -> а не точка?
Резонный вопрос.
Цитата Сообщение от NIch Посмотреть сообщение
Точка - когда это массив структур, а тут динамический массив, т.е. массив указателей.
Не правда, нет там массива указателей. Есть указатель на TMyStruct, которому присвоен адрес динамически выделенной области памяти, который мы можем интерпретировать как массив объектов этого самого типа TMyStruct. Именно объектов, и обращаться к ним надо через точку, а не через оператор косвенного доступа.
Yandex
Объявления
28.02.2013, 12:22     как передавать структуру в массив?
Ответ Создать тему
Опции темы

Текущее время: 21:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru