1

Тема: Створити клас типу - дата з полями: день (1-31), місяць (1-12), рік

Створити клас типу - дата з полями:
день (1-31), місяць (1-12), рік (ціле число). У класі визначити конструктори ( не менше двох);
функції-члени встановлення дня, місяця та року, функції встановлення полів класу повинні перевіряти коректність параметрів, що задаються;
функції-члени одержання дня, місяця та року;

Написати програму тестування всіх можливостей цього класу.

class CMyDate
{
    int day;
    int month;
    int year;

    public:
    CMyDate();
    CMyDate(int d, int m, int y);

    void SetDate(int d, int m, int y);
    int GetDay(void);
    int GetMonth(void);
    int GetYear(void);
};

CMyDate::CMyDate()
{
    day = 1;
    month = 1;
    year = 2001;
}

CMyDate::CMyDate(int d, int m, int y)
{
    day = d;
    month = m;
    year = y;
}

void CMyDate::SetDate(int d, int m, int y)
{
    day = d;
    month = m;
    year = y;
}

int CMyDate::GetDay(void)
{
    return day;
}

int CMyDate::GetMonth(void)
{
    return month;
}

int CMyDate::GetYear(void)
{
    return year;
}

CMyDate MD1; 
CMyDate MD2(4, 5, 2008);и

int t;

t = MD1.GetDay(); // t = 1
t = MD1.GetYear(); // t = 2001

t = MD2.GetMonth(); // t = 5
t = MD2.GetYear(); // t = 2008

2

Re: Створити клас типу - дата з полями: день (1-31), місяць (1-12), рік

Дуже радий, що ви впоралися.
Наступного разу не забудьте ставити теги code (кнопка <>).
Тему можна закривати?

3

Re: Створити клас типу - дата з полями: день (1-31), місяць (1-12), рік

Але в мене вибиває помилка 't' does not a name type. Підкажіть будь ласка як це виправити

4 Востаннє редагувалося koala (13.12.2020 17:43:17)

Re: Створити клас типу - дата з полями: день (1-31), місяць (1-12), рік

За межами функцій можуть бути лише проголошення класів, функцій та змінних. Останні мають починатися з назви типу. А t - не назва типу. Гадаю, вам треба проголосити якусь функцію (наприклад, main) і перенести туди всі присвоювання.

Подякували: Nezox7711

5 Востаннє редагувалося ch0r_t (13.12.2020 18:48:44)

Re: Створити клас типу - дата з полями: день (1-31), місяць (1-12), рік

koala написав:

За межами функцій можуть бути лише проголошення класів, функцій та змінних. Останні мають починатися з назви типу. А t - не назва типу. Гадаю, вам треба проголосити якусь функцію (наприклад, main) і перенести туди всі присвоювання.

Так і є, на моїй стороні все прекрасно компілюється.

tchort@laptop:~/code_tmp$ g++ -Wall -pedantic -pedantic-errors -o main main.cpp 
tchort@laptop:~/code_tmp$ ./main 
1
2001
5
2008
Прихований текст

*тут був код що я використав для тестування компіляції але його було витерто через небажання брати на себе якоїсь відповідальності*

Подякували: Nezox7711

6

Re: Створити клас типу - дата з полями: день (1-31), місяць (1-12), рік

tchort, ви відповідаєте за тих, кого приручили.

Подякували: Chemist-i, Nezox7712