Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

C++ виртуальные функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ do...while http://www.cyberforum.ru/cpp-beginners/thread393237.html
Дана последовательность:. Составить программу c использованием цикла while, выводящую на экран значение и номер члена последовательности, меньшего 0,1. Тест: n=4, p(n)=0,0625. Использовать цикл...
C++ не разборчивые коды помогите пожалуйста ответить на вопросы? заранее спасибо. немного не понятны вопросы, особенно первые 1. (10%)Is next statement correct? strstr("Hello", 'e') Give reasons for your answer. If... http://www.cyberforum.ru/cpp-beginners/thread393230.html
Не работают перегруженные операторы C++
проблема такова: есть перегруженный оператор "=", при вызове которого выполняется присвоение значений массива, однако же, результат почему-то обратно в main не возвращается. #include "stdafx.h"...
Проверьте, не является ли слово "кас" корнем слова без приставки C++
3 задачи - проверьте, не является ли слово "кас" корнем слова без приставки. - Отделите в слове повторяющиеся более двух раз буквы запятыми. - Вычеркните из слова букву, предшествующую...
C++ Закрепление отметки в checkedListBox. http://www.cyberforum.ru/cpp-beginners/thread393222.html
Доброго здоровьица! Хочу узнать, как можно сделать так, чтобы после выделения какого-либо пункта в checkedListBox нельзя было бы снять выделение. Заранее спасибо :)
C++ getline() в чем дело Нужно заполнять данный массив, если использовать просто "cin<<" то пробелы нельзя делать при вводе. Поэтому хочу использовать getline(), вроде все правильно, но почему то работает не корректно.... подробнее

Показать сообщение отдельно
iKarma
9 / 9 / 0
Регистрация: 17.10.2011
Сообщений: 114

C++ виртуальные функции - C++

27.11.2011, 20:00. Просмотров 713. Ответов 0
Метки (Все метки)

Помогите плиз, используя мою прогу, используя мой класс, объявить в нем функции виртуальными и дополнить программу классом, в котором будет использованы эти функции. Написать демонстрационную программу использования данных виртуальных функций. Вот код:
Код
#include "stdafx.h"
#include <iostream>
#include <conio.h>

using namespace std;

enum month {jan = 1, feb, mar, apr, may, jun, jul, aug, sep, okt, nov, dek};
class DATE
{
public:
	void Print(char smb); //вывести дату по формату ДД*ММ*ГГ, где * - char smb
	unsigned Valid(unsigned dd, month mm, unsigned yy); //проверка значений ДД.ММ.ГГ
	//static void MyMethod(DATE& MyDate);
	DATE(DATE& MyDate);
	DATE(); //инициализация датой 01.01.0001
	~DATE();
	unsigned SetDATE(unsigned dd, month mm, unsigned yy); //изменить дату
private:
   unsigned dd;
   month mm;
   unsigned yy;
   char format;
};

DATE::DATE(DATE& MyDate) //определение конструктора копии
{
	dd = MyDate.dd;
	mm = MyDate.mm;
	yy = MyDate.yy;
	format = MyDate.format;
	cout << "Copy Constructor...\n";
}

DATE::DATE():dd(01) //определение конструктора
{
	//dd = 01;
	mm = jan;
	yy = 0001;
	cout << "Constructor...\n";
}

DATE::~DATE() //определение деструктора
{
	cout << "Destructor...\n";
}

//void DATE::MyMethod(DATE& MyDate)
//{
	//MyDate.Print(MyDate.format);
	//MyDate.Print(MyDate.format);
//}

void DATE::Print(char smb)
{
	cout<<dd<<smb<<mm<<smb<<yy<<"\n";
}

unsigned DATE::SetDATE(unsigned dd, month mm, unsigned yy)
{
	this->dd = dd;
	this->mm = mm;
	this->yy = yy;
	return 0;
}

unsigned DATE::Valid(unsigned dd, month mm, unsigned yy)
{
    if (dd>31){
        return 0;
    }
    if ((mm==feb) && (dd>28) && (!(yy%4))){
        return 0;
    }
    if ((mm==feb) && (dd>29)){
        return 0;
    }
    return 1;
}

int main()
{
	cout << "Input a separator character: ";
	char format = getch();
	cout << format << "\n";
	
	DATE MyDate;
	MyDate.Print(format);
    
    cout << "Example of Date:\n";
	MyDate.SetDATE(18, jan, 1991);
	MyDate.Print(format);

	//DATE::MyMethod(MyDate);

	if (MyDate.Valid(18, jan, 1991) == 1) cout << "It's OK Date\n";
    else cout << "Date is Wrong";

	getch();
	return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru