1. Trang chủ
  2. » Công Nghệ Thông Tin

Bai 08 - Lớp

32 283 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lớp
Trường học Học viện Kỹ thuật quân sự
Chuyên ngành Khoa học máy tính
Thể loại Chương
Định dạng
Số trang 32
Dung lượng 246,3 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bai 08 - Lớp

Trang 1

Bộ môn Khoa học máy tính Khoa Công nghệ thông tin Học viện Kỹ thuật quân sự

Trang 18

Cần thiết trong một số trường hợp:

 Cách gọi hàm trong thừa kế.

 Tên thành viên bị che bởi biến cục bộ.

Ví dụ: Point(int xVal, int yVal) {

Point::xVal = xVal;

Point::yVal = yVal;

}

Trang 20

Image(const int w, const int h);

private:

const int width;

const int height;

const int width = 256;

const int height = 168;

Trang 21

 Được phép gọi trên hằng đối tượng.

 Không được thay đổi giá trị dữ liệu thành viên

class Set { public:

Set(void){ card = 0; }

Bool Member(const int) const;

void AddElem(const int);

s.AddElem(10); // SAI

s.Member(10); // ok }

Trang 22

// danh sách liên kết tất cả Window

static Window *first;

// con trỏ tới window kế tiếp

Trang 23

Thành viên tĩnh

Chương 7: Lớp

23

Hàm thành viên tĩnh:

 Tương đương với hàm toàn cục.

 Gọi thông qua:

Window::PainProc();

}

Truy xuất hàm thành viên tĩnh

Khai báo Định nghĩa hàm thành viên tĩnh

Trang 24

Thành viên tham chiếu

Trang 25

Thành viên là đối tượng của 1 lớp

Chương 7: Lớp

25

Dữ liệu thành viên có thể có kiểu:

 Dữ liệu (lớp) chuẩn của ngôn ngữ.

 Lớp do người dùng định nghĩa (có thể là chính lớp đó).

class Point { …… };

class Rectangle { public:

Rectangle (int left, int top, int right, int bottom);

Trang 26

Mảng các đối tượng

Chương 7: Lớp

26

1 Sử dụng hàm xây dựng không đối số (hàm

xây dựng mặc nhiên - default constructor).

VD: Point pentagon[5];

2 Sử dụng bộ khởi tạo mảng:

VD: Point triangle[3] = { Point(4,8), Point(10,20), Point(35,15) };

Ngắn gọn:

Set s[4] = { 10, 20, 30, 40 };

tương đương với:

Set s[4] = { Set(10), Set(20), Set(30), Set(40) };

Trang 27

private:

Point *vertices; // các đỉnhint nVertices; // số các đỉnh};

Không cần biết kích thước mảng

Trang 30

Point (int, int);

void OffsetPt(int, int);

int x, y;

};

class Point { public:

Point(int, int);

void OffsetPt(int, int);

int x, y;

};

Point p = { 10, 20 }; Có thể khởi tạo dạng này

nếu không có định nghĩa

hàm xây dựng

Trang 31

enum ObjType {intObj, realObj, strObj, listObj};

ObjType type; // kiểu đối tượng Value val; // giá trị của đối tượng

//

};

Trang 32

Các trường bit

Điều khiển đối tượng ở mức bit.

VD: Truy xuất các bit trong header của gói tin.

Chương 7: Lớp 32

typedef unsigned int Bit;class Packet {

Bit type : 2; // rộng 2 bit

Bit acknowledge : 1; // rộng 1 bit

Bit channel : 4; // rộng 4 bit

Bit sequenceNo : 4; // rộng 4 bit Bit moreData : 1; // rộng 1 bit

Ngày đăng: 25/10/2012, 16:06

Xem thêm

TỪ KHÓA LIÊN QUAN

w