Цель работы
Освоить работу в интегрированной среде программирования Visual C++, создать класс с
использованием принципа инкапсуляции, имеющий конструктор (по умолчанию и с
параметрами) и деструктор и разработать простую объектно-ориентированную
программу (консольное приложение).
Лабораторное задание
В соответствии с вариантом лабораторного задания разработать
класс, включающий члены трех типов видимости и имеющий конструкторы (по
умолчанию и с параметрами) и деструктор. В классе предусмотреть функции-методы
для ввода и вывода данных объектов созданного класса. Целесообразно разработать
перегруженные конструкторы (конструкторы с различным числом и типами
аргументов), чтобы предусмотреть различные возможные варианты инициализации
объектов класса.
Написать программу, выполняющую:
·
формирование массива объектов (с конструктором
по умолчанию);
·
формирование одиночных объектов (с конструктором
с параметрами);
·
ввод данных с клавиатуры;
·
вывод данных на экран.
Объекты класса должны создаваться при
определении переменных.
В вариантах лабораторных заданий дано примерное содержание
объектов класса. Начальное значение свойств задать самостоятельно.
Определить класс, описывающий объект
“деталь” (назначение, материал, единичное/массовое производство и т.д.).
Листинг
Файл CData.h
class CData {
public:
CData(void);
CData(char* nazv, char* nazn, char* mater, char* proizv);
~CData(void);
void Input(void);
void Output(void);
private:
char m_szNazvanie[50];
char m_szNaznachenie[100];
char m_szMaterial[20];
char m_szProizvodstvo[20];
};
Файл Main.cpp
//
// Технологии программирования
// Лаб 1
//
// Файл: Main.cpp
//
#include <string.h>
#include "CData.h"
#include <conio.h>
void main(void)
{
CData v1;
CData v2("String1", "String2","String3","String4");
CData v3[5];
int i;
v1.Output();
v2.Output();
for (i = 0; i < 5; i++)
{
v3[i].Input();
}
for (i = 0; i < 5; i++)
{
v3[i].Output();
}
_getch();
};
Файл CData.cpp
//
// Технологии программирования
// Лаб 1
//
// Файл: CData.cpp
//
#include <stdio.h>
#include <string.h>
#include "CData.h"
CData::CData(void)
{
m_szNazvanie;
m_szNaznachenie;
m_szMaterial;
m_szProizvodstvo;
strcpy(m_szNazvanie,
"Nazv");
strcpy(m_szNaznachenie,
"Nazn");
strcpy(m_szMaterial,
"Mat");
strcpy(m_szProizvodstvo, "Proizv");
}
CData::CData(char* nazv, char* nazn, char* mater, char* proizv)
{
strcpy(m_szNazvanie,
nazv);
strcpy(m_szNaznachenie,
nazn);
strcpy(m_szMaterial,
mater);
strcpy(m_szProizvodstvo,
proizv);
}
CData::~CData(void)
{
}
void CData::Input(void)
{
printf("Vvod
dannyh:\n");
printf(" Nazvanie Detali: ");
gets(m_szNazvanie);
printf(" Naznachenie Detali: ");
gets(m_szNaznachenie);
printf(" Material Detali: ");
gets(m_szMaterial);
printf(" Proizvodstvo Detali: ");
gets(m_szProizvodstvo);
}
void CData::Output(void)
{
printf(" |
Nazvanie: %s | Material: %s | Naznachenie: %s | Proizvodstvo: %s \n",
m_szNazvanie, m_szMaterial,
m_szNaznachenie, m_szProizvodstvo);
}
Пояснительный текст к программе
Переменная i —
Счетчик цикла
Переменные m_szNazvanie, m_szNaznachenie, m_szMaterial, m_szProizvodstvo
содержат данные о детали
Комментариев нет:
Отправить комментарий