1. Trang chủ
  2. » Kiếm hiệp

Lập trình hướng đối tượng: Class

7 5 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 165,58 KB

Nội dung

[r]

(1)

L PỚ

L PỚ

B mơn H Th ng Máy Tính Truy n Thơngộ ệ ố ề

Khoa Công Ngh Thông Tin Truy n Thôngệ ề

Đ i h c C n Th ạ ọ ầ ơ

(CLASS)

(2)

N i dung

N i dung

 L p – Quy n truy xu tớ ề ấ

 Khai báo, đ nh nghĩa l p đ n gi nị ớ ơ ả  Hàm thành viên n i n (inline)ộ ế

 Hàm xây d ng (constructor)ự  Hàm h y (destructor)ủ

 Hàm b n (friend) – L p b nạ ớ ạ  Đ i s m c đ nhố ố ặ ị

(3)

N i dung (tt)

N i dung (tt)

 Toán t ph m viử ạ

 Danh sách kh i t o thành viênở ạ

 Thành viên h ng - Thành viên tĩnhằ  Thành viên tham chi uế

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

 Ph m vi l pạ ớ

 C u trúc (structure) h p (union)ấ ợ

(4)

Khái ni m l p

Khái ni m l p

L p : ki u d li u tr u tể ữ ệ ừ ượng.

TÊN L P

TÊN L P

D li u ữ ệ

thành viên Hàm thành viên Đ c t ặ ả

đ i ố

tượng

T p ậ

thao tác

class TÊNL PTÊNL P

[: <Quy n truy xu tề ấ > L PCHAL PCHA ] { <Quy n truy xu t ề ấ > :

DataType1 memberdata1; DataType2 memberdata2; ……….

< Quy n truy xu t ề ấ > :

memberFunction1(); memberFunction2(); …………

};

private protected

(5)

L p đ n gi n ơ

L p đ n gi n ơ

Ví d:

class PointPoint {

int xVal, yVal; public:

void SetPt (int, int); void OffsetPt (int, int);

};

void PointPoint::SetPt (int x, int y) { xVal = x;

yVal = y; }

void PointPoint::OffsetPt (int x, int y) { xVal += x;

yVal += y;

void main() { Point pt;

pt.SetPt(10,20); pt.OffsetPt(2,2); ……

pt.xVal = 10; // Đúng hay sai? Point pt1, pt2, pt3;

………

G i hàmọ

trên đ i tố ượng

T o raạ

đ i tố ượng thu c l pộ ớ

Point

Khai báo L pớ

Đ nh nghĩaị

(6)

H p (union ):

 T t c thành viên ánh x đ n đ a ch bên ấ ả ạ ế ị ỉ

trong đ i tố ượng (khơng liên ti p).ế

 Kích thước = kích thước c a d li u l n nh t.ủ ữ ệ ớ ấ

union ValueValue {

long integer; double real; char *string; Pair list; //

};

Kích thước c a Value ủ

class PairPair {

Value *head; Value *tail;

class ObjectObject { private:

enum ObjType {intObj, realObj, strObj, listObj}; ObjType type; // ki u đ i tể ố ượng

Value val; // giá tr c a đ i tị ủ ố ượng

(7)

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

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

typedef unsigned int BitBit; class PacketPacket {

Bit type : 2; // r ng bitộ

Bit acknowledge : 1; // r ng bitộ

Bit channel : 4; // r ng bitộ

Bit sequenceNo : 4; // r ng bitộ

Bit moreData : 1; // r ng bitộ

// };

enum PacketType { dataPack, controlPack, supervisoryPack };

enum Bool { false, true };

// …………

Packet

Packet p;

Ngày đăng: 09/03/2021, 04:09

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w