Thông tin tài liệu
Bài 11
Giới thiệu về lớp (class )
Ngôn ngữ C++
1
Căn bản về class
• Class là cơ sở của C++ cho lập trình hướng đối
tượng.
• Class là đơn vị đóng gói cơ bản, nó cung cấp
cơ chế để tạo đối tượng.
• Class định nghĩa một kiểu dữ liệu mới đặc tả một
đối tượng. Class bao gồm data và code thực
thi data đó, vì vậy class liên kết data với code.
• Đối tượng là một hiện hữu của class.
• Class là khái niệm trừu tượng mang tính luận lý
còn đối tượng là biểu diễn vật lý của class.
Ngôn ngữ C++
2
• Data được chứa trong các biến còn code được
chưa trong các hàm.
• Các hàm và biến trong class được gọi là thành viên
của class, do đó một biến được khai báo trong
class được gọi là biến thành viên, tương tự hàm
được gọi là hàm thành viên.
• Đôi khi cũng dùng khái niệm biến hiện hữu
Ngôn ngữ C++
3
Dạng tổng quát của class
class tên {
private biến và hàm
public:
biến và hàm
} danh sách các đối tượng;
Ngôn ngữ C++
4
Ví dụ 1
Ngôn ngữ C++
5
Ví dụ 2
class queue {
int q[100];
int sloc, rloc;
public:
void init();
void qput(int i);
int qget();
};
Ngôn ngữ C++
6
• Một class có thể chứa thành viên private (riêng)
hay public (phổ biến). Mặc định là private, có nghĩa
là chỉ được truy xuất bởi các thành viên khác của
class.
• Để cho phép truy xuất từ phần khác của chương
trình thì định nghĩa thành viên sau từ khóa public.
Như vậy phần khác của chương trình truy xuất biến
riêng củc class thông qua các hàm public.
Ngôn ngữ C++
7
Tạo đối tượng
• Khi đã định nghĩa class, có thể tạo đối tượng bằng
cách dùng tên của class làm kiểu.
ví dụ:
queue Q1,Q2;
• Khi một đối tượng được tạo ra nó sẽ sở hữu riêng
các bản sao biến và hàm thành viên.
Ngôn ngữ C++
8
Truy xuất
• Để truy xuất thành viên public của class thông qua
một đối tượng dùng dấu chấm như cách dùng trên
kiểu cấu trúc.
• ví dụ
cout << Q1.sloc;
Ngôn ngữ C++
9
Thực hiện một hàm thành viên
• Dùng dấu :: để thông báo hàm của class
tên class :: tên hàm thành viên(){code}
ví dụ:
void queue::qput(int i)
{
if(sloc==100) {
cout << "Queue is full.\n";
return;
}
sloc++;
q[sloc] = i;
}
Ngôn ngữ C++
10
[...]... m Ngôn ng C++ 11 void queue::init () {rloc = sloc = 0; } void queue::qput(int i) { if(sloc==10 0) { cout . Bài 11 Giới thiệu về lớp (class ) Ngôn ngữ C++ 1 Căn bản về class • Class là cơ sở của C++ cho lập trình hướng đối tượng. •. q[rloc]; } int main () { queue a, b; a.init (); b.init (); a.qput(1 0); b.qput(1 9); a.qput(2 0); b.qput( 1); Ngôn ngữ C++ 13 cout << "Contents of queue a: "; cout << a.qget () <<. trị trả về Ngôn ngữ C++ 16 class queue { int q[100]; int sloc, rloc; public: queue (); // constructor ~queue (); // destructor void qput(int i); int qget (); }; Ngôn ngữ C++ 17 queue::queue () { sloc
Ngày đăng: 02/04/2014, 06:20
Xem thêm: Bài 11 Giới thiệu về lớp (class ) potx, Bài 11 Giới thiệu về lớp (class ) potx