1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng lập trình hướng đối tượng c++‎ chương 4 hàm thành viên

13 7 0

Đ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

Định dạng
Số trang 13
Dung lượng 558,21 KB

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

Nội dung

Nội dung• Tái định nghĩa, Đối số mặc nhiên • Hàm inline • Truyền đối tượng như đối số của hàm... Tái định nghĩa hàm thành viên• Trong 1 lớp, có thể định nghĩa các hàm thành viên trùng tê

Trang 1

HÀM THÀNH VIÊN

Chương 4

1

Trang 2

Nội dung

• Tái định nghĩa, Đối số mặc nhiên

• Hàm inline

• Truyền đối tượng như đối số của hàm.

• Trị trả về của hàm là đối tượng

• Con trỏ *this

• Hàm thành viên hằng

2

Trang 3

Tái định nghĩa hàm thành viên

• Trong 1 lớp, có thể định nghĩa các hàm thành viên trùng tên, nhưng các hàm này phải khác nhau về tham số

3

Tính đa hình của lập trình hướng đối tượng

Trang 4

Dùng đối số mặc nhiên

• Có thể dùng đối số mặc nhiên cho hàm thành viên.

• Tất cả đối số mặc nhiên đều phải nằm cuối hàm

4

Trang 5

Hàm inline

• Có 2 cách khai báo hàm inline :

– Thêm từ khóa inline vào trước hàm thành viên.

– Định nghĩa hàm ngay bên trong khai báo lớp

5

Trang 6

Truyền đối tượng như đối số của hàm

• Truyền qua giá trị

– Tham số của hàm thành viên có thể có kiểu bất kỳ – Một đối tượng có thể được truyền theo tham số.

6

Trang 7

• Truyền qua địa chỉ

– Tiết kiệm ô nhớ cho chương trình (hơn truyền qua

giá trị)

– Có thể làm thay đổi giá trị của đối tượng truyền vào

7

Truyền đối tượng như đối số của hàm

Trang 8

• Truyền qua tham chiếu

– Tương tự như truyền qua địa chỉ

– Định nghĩa hàm sẽ đơn giản hơn (như truyền qua giá trị) – Cũng có thể làm thay đổi giá trị của đối tượng truyền vào

8

Truyền đối tượng như đối số của hàm

Trang 9

Trị trả về của hàm là đối tượng

• Trị trả về truyền qua giá trị

– Trị trả về của hàm thành viên có thể có kiểu bất kỳ – Một hàm có thể có trị trả về là một đối tượng

9

Trang 10

Trị trả về của hàm là đối tượng

• Trị trả về truyền qua địa chỉ

– Tránh lãng phí bộ nhớ và thời gian gọi hàm

– Sử dụng phải cẩn thận vì có thể gây ra hiệu ứng phụ

10

Trang 11

Trị trả về của hàm là đối tượng

• Trị trả về truyền qua tham chiếu

– Tương tự như truyền qua địa chỉ

– Đa số dùng để trả về một đối tượng toàn cục hay nội dung một con trỏ đã được cấp vùng nhớ trong hàm

11

Trang 12

Con trỏ *this

• Lưu địa chỉ của chính đối tượng đang xét

• Muốn lấy giá trị của chính đối tượng: dùng *this

• Thuộc tính truy cập là private

12

class ViDu2 {

int a;

public:

{

cout << “Dia chi doi tuong : “ <<this<< endl ;

cout << “Dia chi du lieu

a : “ <<&a<< endl ;

} };

class Diem {

public :

Diem()

{ x=y=0; }

{

this ->x = x;

this ->y = y;

}

… };

Trang 13

Hàm thành viên hằng

• Hằng dữ liệu: không thay đổi giá trị trong khi thực thi.

• Hằng đối tượng: không thay đổi giá trị các thành phần

dữ liệu trong đối tượng

• Hàm thành viên hằng:

– Có thể thao tác trên hằng đối tượng

– Không làm thay đổi giá trị dữ liệu của đối tượng

13

class Diem {

int x,y;

public:

Diem();

};

… … …

Diem a;

const Diem c;

a.Hien();

a.Doi(5,6);

c.Hien();

c.Doi(10,20);

}

Sai vì Doi(int,int) không là hàm hằng

Ngày đăng: 19/12/2021, 22:47

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm