У вас вопросы?
У нас ответы:) SamZan.net

Еа класс имеет конструктор то он вызывается автоматически при создан объекта класса поэтому все объекты к

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.4.2025

Конструкторы

Для инициализации объектов класса используются специальные функции-члены - конструкторы. Имя конструктора совпадает с именем класса. Конструктор не возвращает никакого значения, даже уо1с1. Еа класс имеет конструктор, то он вызывается автоматически при создан! объекта класса, поэтому все объекты класса будут проинициализированы.

class Date{

 int d,m,y;    

public:

 Date(int =0,int =0,int =0);    //конструктор

 void Add_Year(int n);        

 void Add_Day();             

 void Print();

};

#include<iostream.h>

void Date::Print()

{

 cout<<d<<'.'<<m<<'.'<<y;

}

int leap(int year)

{

 return (year % 4==0 && year % 100!=0) || year%400==0;

}

void Date::Add_Year(int n)

{

 if(m==2 && d==29 && leap(y+n)!=1){  

   m=3;                               

   d=1;                              

 }                                  

 y+=n;

}

char daytab[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},

     {0,31,29,31,30,31,30,31,31,30,31,30,31}

    };

void Date::Add_Day()        

{

 if(d<daytab[leap(y)][m])   //если не последний день месяца

   d++;        //увеличить номер дня

 else if(m<12){  //…если последний день месяца, но не года

  d=1;m++;       //первое число следующего месяца 

 }

 else{       //если последний день года

   d=1;m=1;y++;  //1января следующего года

 }

}

//реализация конструктора

#include<dos.h>

Date::Date(int dd,int mm,int yy)     //значения аргументов по умолчанию

{                               //второй раз не указываются

 date sysd;   

 getdate(&sysd);     

 d=dd?dd:sysd.da_day;   

m=mm?mm:sysd.da_mon;  

 y=yy?yy:sysd.da_year;  

}

#include<conio.h>

int main()

{

 Date Studies(1,9,2007);  

 cout<<"€исходная дата: ";

 Studies.Print();cout<<endl;

 Studies.Add_Year(5);    

 cout<<"через 5 лет: ";

 Studies.Print();cout<<endl;

 Date Today;  //использование конструктора по умолчанию

 cout<<"сегодня: ";

 Today.Print();cout<<endl;

 Today.Add_Day();  

 cout<<"завтра : ";

 Today.Print();cout<<endl;

 Date D(29,2,2000);

 cout<<"интересная дата: ";

 D.Print();cout<<endl;

 D.Add_Day();

 cout<<"следующий день: ";

 D.Print();cout<<endl;

 getch();

 return 0;

}




1. Курсовой проект - Разработка модели и конструкции женских закрытых туфель клеевого метода крепления
2. лекция проф Фокин В
3. Социальная работа в Скандинавских странах
4. Лекции по теории литературы- Целостный анализ литературного произведени
5. Основа 1996 ББК 67
6. Лекция ’ 10 Характеристика немецкой классической философии гносеология этика и эстетика И
7. Реферат- Научное открытие - электродинамическая индукция
8. Методические рекомендациипо подготовке к семинарским занятиям
9. Физическая культура и спорт Руководитель программы доктор педагогических наук профессор Ю
10. і Дитинство і юність пройшли в Києві