172 / 24 / 4
Регистрация: 18.01.2011
Сообщений: 359
1

Передать массив элементов(типа int) объекта, в функцию из массивов(типа int)

27.01.2012, 11:22. Показов 1630. Ответов 4
Метки нет (Все метки)

Представьте такую ситуацию. Есть у вас массив чисел:
C++
1
Mass[4]
И вы хотите передать его в функцию. Я делаю это так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
//объявим ф-ю:
func(const short*Mass)
{
...
}
//передадим эл-т:
main
{
...
short Mass[4];
func(Mass);
...
}
А теперь допустим, что у меня есть массив объектов типа Point.
и у этого объекта несколько элементов. Например:
[CPP]
class Point
{
public:
Point() {}
short X,Y;
AnsiString Name;
};
/CPP]
И вот хочу я массив объектов засунуть в ф-ю, но не создавая отдельный массив типа short, а как бы сразу например:
C++
1
2
Point P[4];
func(P->X);
Надеюсь я доступно выразил свой вопрос. Спасибо за помощь!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.01.2012, 11:22
Ответы с готовыми решениями:

Как передать 0 в функцию типа f (int, int&)
Подскажите, почему при повторных вызовах f остается предыдущее значение S? Т.е. не обнуляется в...

Напишите перегруженную функцию power (), которая принимает два целочисленных параметра типа int и возвращает целочисленное значение типа int
Операции над целыми числами осуществляются быстрее, чем над числами с плавающей точкой. Напишите...

Написать функцию типа Beaty(int iA, int iB, int *pc)
Задание: Написать функцию типа Beaty(int iA, int iB, int *pc); для выражения (iA+iB)/(iA*iB). ...

Передать массив чисел типа Int функции
Всем привет. Столкнулся с проблемой передачи числового массива функции. Этот код изменяет...

4
Полярный
475 / 447 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
27.01.2012, 11:42 2
Цитата Сообщение от Андрей2011 Посмотреть сообщение
И вот хочу я массив объектов засунуть в ф-ю, но не создавая отдельный массив типа short, а как бы сразу например
Перефразирую:
Цитата Сообщение от Андрей2011 Посмотреть сообщение
1) Я НЕ создаю массив
2) Я его передаю в функцию


Цитата Сообщение от Андрей2011 Посмотреть сообщение
Point P[4];
func(P->X);
Но здесь то вы его создаете. Если нужно перебирать по одному объекту, то:
C++
1
2
3
4
5
6
7
8
void yourFunc(Point x)
{
//x - принятый объект
}
 
Point mas[4];
for (int i = 0; i < 4; i++)
   yourFunc(mas[i]);
0
172 / 24 / 4
Регистрация: 18.01.2011
Сообщений: 359
27.01.2012, 11:45  [ТС] 3
нет мне надо массив передать.
вот упрощенный вариант вопроса.
C++
1
2
3
4
 struct {short X,Y;}
 Mass[4];
 
  func(Mass->X);  //хочу передать массив элементов Х.
0
Полярный
475 / 447 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
27.01.2012, 11:55 4
Цитата Сообщение от Андрей2011 Посмотреть сообщение
нет мне надо массив передать.
Что бы передать массив, надо его сформировать. Поэтому не получиться упрощенного варианта. Предлагаю перед этим создать массив, ну и сформировать его по циклу mass->x как вам надо.
1
172 / 24 / 4
Регистрация: 18.01.2011
Сообщений: 359
27.01.2012, 11:56  [ТС] 5
Ага. понял. просто думал что есть упрощенный вариант, мало ли. Размечтался. Спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.01.2012, 11:56
Помогаю со студенческими работами здесь

Число типа int преобразовать в массив int[] по одной цифре в каждый индекс
В интернете никак не могу. Помогите пожалуйста.

Значения типа int нельзя присвоить сущности типа int
Значения типа int нельзя присвоить сущности типа int. Как изменить код, что бы было правильно?...

Значение типа int нельзя присвоить сущности типа int
значение типа int нельзя присвоить сущности типа int подскажите с исправлением ошибки ст 26.27 ...

Ошибка "Аргумент типа int несовместим с параметром типа int". Буду признателен за подсказку!
Прошу не судить строго, только начинаю программировать, нужна помощь. int Zapol_Funkcii(int...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru