Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

05 классы 3

.pdf
Скачиваний:
7
Добавлен:
27.03.2015
Размер:
155.34 Кб
Скачать

05 – 1

2.9. Побитовое копирование объекта

class Date { int day; int month; int year;

public:

Date(int=1, int=1, int=2004); void print();

};

05 – 2

Date::Date(int d, int m, int y)

{

day = d; month = m; year = y;

}

05 – 3

void Date::print()

{

cout << day << ”-”

<<month << ”-”

<<year;

}

05 – 4

int main()

{

Date d1(1,5,1990), d2;

//d1 содержит дату 1-5-1990

//d2 содержит дату 1-1-2004

//по умолчанию

cout << ”d1 = ”; d1.print();

cout << endl;

05 – 5

cout << ”d2 = ”; d2.print();

cout << ” (до копирования)” << endl;

d2 = d1;

// побитовое копирование

 

// d1 в d2

cout << ”d2 = ”; d2.print();

cout << ” (после копирования)”;

return 0;

}

05 – 6

d1 = 1-5-1990

d2 = 1-1-2004 (до копирования) d2 = 1-5-1990 (после копирования)

05 – 7

2.10. Константные объекты и ФЭ

Пример. Создание константного объекта

const Date d(1,1,2004);

Пример. Описание константной ФЭ класса

int Date::getDay() const { ... }

05 – 8

Пример:

сlass Inc { int count;

const int delta; //константное ДЭ public:

Inc(int=0, int=1); //конструктор void add();

void print() const;//константная ФЭ };

05 – 9

Inc::Inc(int c, int):

delta(2*d+1) // инициализатор

// элемента

{

count = c;

}

void Inc::add()

{

count += delta;

}

05 – 10

void Inc::print() const

{

cout << ”count = ” << count << ”, ”;

cout << ”delta = ” << delta << endl;

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]