Шаг 76.
Microsoft Visual C++ 2010. Язык С/С++.
Классы в C++. Примеры создания классов. Пример 3

    На этом шаге мы рассмотрим третий пример программы, использующей классы и объекты.

    Используем класс, созданный в примере предыдущего шага, для создания нового класса - наследника класса из примера 2. Новый класс должен будет задавать дополнительную характеристику изделия - его форму. Пример программы приведен ниже, результат работы программы - на рисунке 1.

// 76_1.cpp: главный файл проекта.

#include "stdafx.h"
#include <stdio.h> //for printf()
#include <conio.h> //for _getch()

#include <clocale>     //обязательно для функции setlocale()
using namespace System;

class produce //начало определения класса
{
	private:
		//поля класса:
		int modelnumber; //номер изделия
		int partnumber;  //номер детали
		float cost;     //стоимость детали
	public:
		//установка данных с помощью метода
		//Присваивает данным класса значения своих параметров
		void setpart(int mn, int pn, float c)
		{
			modelnumber = mn; 
			partnumber = pn; 
			cost = c;
		}
		void show() //вывод данных 
		{
			printf ("Номер модели: %d\n",modelnumber);
			printf ("Номер партии: %d\n",partnumber);
			printf ("Стоимость детали: %.2f\n",cost);
		}
}; //конец описания класса

//Объявление класса-наследника с новыми членами: 
class MoreProduce : public produce
{
	public:
		char *ProduceForm; //описание формы изделия 
		void FormDecl (char *s) {
			ProduceForm = s;
		}
		void show1()
		{
			printf("Форма изделия: %s\n",ProduceForm);
		}
};

//обработка класса в головной программе 
void main()
{
	setlocale(LC_ALL,"Russian"); //функция setlocale() с аргументами
	                             //для корректного вывода кириллицы

	MoreProduce newizd;
	newizd.setpart(100,200,250.5);
	newizd.FormDecl("Квадрат"); 
	newizd.show();
	newizd.show1(); 
	_getch();
}
Архив проекта можно взять здесь.


Рис.1. Результат работы приложения

    Со следующего шага мы начнем рассматривать конструкторы и деструкторы.




Предыдущий шаг Содержание Следующий шаг