Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа 16.doc
Скачиваний:
15
Добавлен:
11.04.2015
Размер:
169.98 Кб
Скачать

Примет класса - Строка

#include <string.h> class StringHolder { char *contens; public: StringHolder(char *aString=0); ~StringHolder(void); char *getContens(void); void setContens(char *aString); }; StringHolder::StringHolder(char *aString) { if(aString) { contens=new char[strlen(aString)+1]; strcpy(contens,aString); } else {contens=new char[1]; *contens=‘\0’; } } StringHolder::~StringHolder(void) { delete contens; } char *StringHolder::getContens(void) { return contens; } void StringHolder::setContens(char *aString) { delete contens; contens=new char[strlen(aString)+1]; strcpy(contens,aString); } void main() { StringHolder str1,str2(“Object2”), *str3, *str4; str3=new StringHolder(“object3”); str4=new StringHolder; cout << str1.getContens(); cout << str2.getContens(); cout << str3->getContens(); cout << str4->getContens(); } Упражнения 1. Предположим Вам требуется программа на традиционном языке вроде С. Как бы вы смоделировали методы и классы? 2. Как вы думаете., что лучше, иметь ключевое слово public, protected или private присоединенное к каждому объекту (как в Java), или к области данных (как в C++).