Показать сообщение отдельно
Старый 27.06.2009, 23:00   #1
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Хитрая хитрость

итак, задача:

есть несколько классов.

допустим,

class human
{
int x,y,z, height, width;
};


class car
{
int x,y,z,speed;
};


нам нужно задавать внутренние значения для разных объектов разных классов, но имея лишь условный номер значения в объекте класса и
само значение. для примера я сделал что все значения всех классов - int.

т.е. пример условия: 2, 40
где 2 - номер значения (Y для обоих классов), а 40 - само значение, т.е. будь объект хоть car хоть human, в нём Y выставится в 40.

я предположил что надо сделать

массив, имеющийся в объекте каждого класса
который содержит указатели
на все значения (блин ну field'ы короче если говорить по блицевски)
мы сами суём в него указатели на филды при создании объекта в конструкторе класса.

в общем,
не мог бы кто реализовать такой пример, чтоб в результате это можно было уместить в одну функцию типа SetValue(num,value) для этих двух классов которые я привёл?

я довольно запутался... помню что если класс находится в иерархии другого класса, то мы можем из объектов дочерних классов получать объекты класса родителя, т.е. универсальные, это вроде ещё полиморфизм зовётся. думаю этот массив должен быть как раз в родительском...
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием