Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Комутатор классов 
:(
    Опции темы
AndreyVN
Дата 22.9.2004, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 67
Регистрация: 25.6.2004
Где: Здесь, в Волгогра де

Репутация: нет
Всего: нет



Привет, запутался малость:
есть класс TКот, как споектировать класс TКоты, чтобы ТХозяин мог по индексу i получить доступ к экземпляру класса i-го кота?

Код

class TКоты: public TKoт
{
 ТКоты::CreateCats()
 {
    for(int i=0; i<6; i++) Кот[i]= new TКот
 }

}

class ТХозяин: public TКоты

Не соображу как мне массивом указателей воспользоваться...
PM   Вверх
Borisff2003
Дата 22.9.2004, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 26.2.2004
Где: г. Уфа

Репутация: 1
Всего: 1



class ТХозяин: public TКоты

Это следует читать, как : "Хозяин есть куча котов" butbut.gif

а в коты сделай operator[]

ЗЫ: Да и кстати Куча котов, это не кот. Наследование подразумевает связь is a.. , т.е. про потомка можно сказать что он есть родитель без всяких ограничений но со специфическимо свойствами. Так Роза цветок и Тюльпан цветок. а вот букет, не цветок, и его не надо наследовать от цветка

Это сообщение отредактировал(а) Borisff2003 - 22.9.2004, 11:41
--------------------
Лень, двигатель прогресса
PM MAIL WWW ICQ   Вверх
AndreyVN
Дата 22.9.2004, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 67
Регистрация: 25.6.2004
Где: Здесь, в Волгогра де

Репутация: нет
Всего: нет



В действительности все не так как на самом деле. А на самом деле я переписываю свою программу, которая была написана в процедурном стиле, там куча массивов структур и все запутано хуже некуда. Пытаюсь отсортировать код по классам.

В общем, для совместимости мне надо чтобы класс Хозяин вызывал по имени функцию из класса Кот а весь механизм привязки к конкретному i-тому коту надо где-то спрятать.


PS: А что такое operator[] qstn.gif
PM   Вверх
Borisff2003
Дата 22.9.2004, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 26.2.2004
Где: г. Уфа

Репутация: 1
Всего: 1



Код


class TКоты//не надо наследовать, смычла нет
{
ТКоты::CreateCats()
{
 for(int i=0; i<6; i++) Кот[i]= new TКот
}
TКот& operator[](int pos)
{
  return *(Kot[pos]);
};
}


Это сообщение отредактировал(а) Borisff2003 - 22.9.2004, 12:59
--------------------
Лень, двигатель прогресса
PM MAIL WWW ICQ   Вверх
AndreyVN
Дата 22.9.2004, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 67
Регистрация: 25.6.2004
Где: Здесь, в Волгогра де

Репутация: нет
Всего: нет



Спасибочки, счщас попробую.
PM   Вверх
DonPager
Дата 24.9.2004, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Колдырь
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 28.3.2003
Где: Воронеж

Репутация: нет
Всего: 2



Borisff2003 к стати а как описать перегрузку для двумерного массива ?
например для доступа к элементу m[1][10] - где m - матрица комплексных чисел...


--------------------
кодер + лодырь = колдырь
PM MAIL ICQ Skype GTalk   Вверх
mr.DUDA
Дата 24.9.2004, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 25
Всего: 232



2 DonPager,

Модератор: Пожалуйста, один топик - один вопрос.


--------------------
user posted image
PM MAIL WWW   Вверх
Borisff2003
Дата 27.9.2004, 05:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 26.2.2004
Где: г. Уфа

Репутация: 1
Всего: 1



DonPager
Наверное надо сделать класс, строка , в ней переопределить оператор [], а в классе матрицы сделать чтоб возвращалась ссылка на строку. Может и проще можно, но врядли

--------------------
Лень, двигатель прогресса
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0632 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.