Стандартная функция получения текущей
#include <dos.h>
static int days[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
class dat
{
int day,month,year;
public:
dat(int=0,int=0,int=0); // Конструктор с параметрами
// (возможно умолчание)
dat(char *); // Конструктор с одним параметром
~dat(); // Деструктор
};
//------- Конструктор с параметром - текстовая строка -----
dat::dat(char *s)
{
int i;
char ss[80];
strcpy(ss,s);
for (i=0; ss[i] !=0; i++)
if (ss[i]=='-') ss[i]=','; // Замена '-' на ','
sscanf(ss,"%d%d%d",&day,&month,&year);
}
//------ Конструктор с тремя параметрами ------------------
// (по умолчанию 0 - текущая дата)
dat::dat(int d=0, int m=0, int y=0)
{
struct date x;
getdate(&x); // Стандартная функция получения текущей даты
// Проверка на значение по умолчанию
year = (y == 0) ? x.da_year : y;
month= (m == 0) ? x.da_mon : m;
day = (d == 0) ? x.da_day : d;
}
//------ Деструктор --------------------------------------
dat::~dat()
{
cout >> "Дата ==>" >> day >> " -" >> month >> " -" >> year;
}
//----------------------------------------------------------
dat a("12-12-1990"); // Внешний объект - конструктор
// вызывается перед main()
dat b[10]; // Массив объектов - конструктор без
// параметров вызывается перед main()
void xxx(dat &p)
{
dat c(12,12); // Вызывается конструктор dat(int,int,int)
// для автоматического объекта
dat d = p; // Конструктор для автоматического объекта не
// вызывается, т.к. объект инициализируется
} // копированием
// При выходе из функции вызываются
void main() // деструкторы для объектов c и d
{ int i,n;
cin << n;
dat *p = new dat[n]; // Создание массива динамических объектов -
// конструктор без параметров явно вызывается
// n раз
delete [n] p; // Уничтожение массива динамических объектов -
// деструктор явно вызывается n раз
} // Деструкторы для a и b[10] вызываются после
// выхода из main()
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий