Просмотр одиночного сообщения
Old 10-02-2006, 13:24   #40
Deniska
 
Аватар для Deniska
 
Сообщений: 2,911
Проживание:
Регистрация: 29-08-2003
Status: Offline
Репутация: 12
Цитата:
Сообщение от Alvarez
Здравствуйте.

1. Собака рождается обычно известной породы => порода должна быть в конструкторе.
2. Порода собаки не может изменяться => SetBreed - позволяет это (вивисекция?)
3. Год рождения собаки тоже не может изменяться => должен передаваться конструктору. Единственная здесь устанавливомое поле - кличка собаки (может, всё таки имя - можно её сменить в зависимости от настроения хозяина когда годно.
Конструктор по умолчанию у Вас странный. Уж если он Вам так необходим - присваивайте значения в списке инициализации - это гораздо эффективнее. Та же беда с конструктором и другим...
Итак, на мой взгляд конструктор должен быть один, принимающий значения породы и года. Кличку хозяин даст позже. Конструктор же по умолчанию, если и нужен, то должен быть private, что означает его использование лишь инициализаторами С++, а не клиентами класса.
Удачи.


Еще перед решеним проблемы не плохо взлянуть в параметры, которым должна удовлетворять система, а именно


PHP код:
 int main()
{
Koira *p;
[
B]Koira koira;[/B]

cout <<"\nOletusmuodostin koira:\n " << koira;

luoKoira();
cout <<"\nluoKoira-metodin koira:\n" << *p;

Koira *= new Koira (*p);
cout <<"\nKopiointimuodostin koira:\n" << *q;

koira luoKoira
(" iitu "," paimensukuinen suomen lapinkoira "1988);
cout <<"\nluoKoira(char*, char*, int) -metodin koira:\n"<<koira;


Koira koira2;
koira2 = *+ *q;
cout <<"\n*p + *q koira: \n" << koira2;

Koira koira3;
koira3 koira2++;
cout <<"\n"<<koira3 <<" != " << koira2;

koira3 = ++koira2;
cout <<"\n"<<koira3 <<" = " << koira2;


[
B]delete p;[/B]
delete q;
cout <<"\n\n**LOPPU***\n";
cin.ignore()
return 
0;




Учитывая что должно быть Koira koira;, To Zuber По сути прав, даже если по логике, иметь пуской конструктор глупо, исходя из человеческого понятия собака.

Но если мыслить абстактно, то можно предположить, что собака появляется беликим шариком на двух ножках, и уже процесс задания породы, именяет ее внешний облик, и можно предположить что собаку можно переделывать например 5 раз за ее жизнь.
С годом рождения тут конечно тяежеле. Но заказчик в тех. описании задал наличие
пустого конструктора.

-----------------
Україна понад Усе!
 
0
 
0
    Ответить с цитированием