Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > перенос значения члена класса


Автор: Balbek 12.6.2008, 22:59
ситуация такова, объясняю образно, пожалуйста вчитайтесь и поймите как у меня все построено: объявляю паблик переменную член в классе 1. в классе 2 создаю объект класса 1, как член класса 2. Затем в классе 2 изменяю значение этого созданного объекта. В классе 3 создаю объект класса 1 и хочу получить вот это измененное в классе 2 значение.

Код

class my1
public: int i = 0;

class my2: public 1
public:
      my1 bb;
...
      в реализации класса изменяю значение i.bb на 1;

class my3: public 1
      my1 ccc;


хчу шоб ссс = имело значение i равное 1.

Проблема class my3 не могу наследовать от my2, получается цикл при компиляции.


 ! 
chipset
Юзаем [code=cpp], товарищи.
Пасибке.
Chipset.

Автор: andrew_121 13.6.2008, 02:46
Balbek - Если я правильно понял задачу, то так:
Код

class my1 {
public:
   my1() {}
   static int i;
};
int my1::i = 0;

Автор: chipset 13.6.2008, 05:58
Цитата(Balbek @  12.6.2008,  12:59 Найти цитируемый пост)
Проблема class my3 не могу наследовать от my2, получается цикл при компиляции.


Это ващета ужасный дизайн, юзай типа как andrew_121 сказал. Лучше вообще не делать такого ибо получается навроде глобальной переменнои с static. Пусть ccc получает свои значения извне, от кого то кто знает про bb.

А если сильна нужно то сделай my1 *ccc; -- указатель типа что-бы не было цикличности.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)