.1| Cài đặt thuộc tính

Một phần của tài liệu Tài liệu giảng dạy kỹ thuật lập trình 2 (Trang 50 - 52)

Như chúng ta đã biết một lớp bao gồm ba thành phần sau: Class name (tên lớp)

Attributes (Các thuộc tính / dữ liệu) Methods (Các phương thức/ hành động)

Cú pháp khai báo một lớp như sau: class Tên_Lớp

{

public/ protected / private: kiểu_dữ_liệu tên_dữ_liêu; public/ protected / private:

kiểu_trả_về tên_phương_thức; }

Loại đối tượng đơn giản nhất là chỉ chứa dữ liệu. Có thể định nghĩa một kiểu SinhVien gồm hai các thuộc tính như sau:

#pragma once #include<string> using namespace std; class SinhVien { public: string hoTen; string ngaySinh; int gioiTinh; float diem; };

#pragma once là chỉ thị tiền xử lý dufg để tránh lỗi xảy ra do include một thư

viện nhiều lần.

Tài liệu giảng dạy Kỹ Thuật Lập Trình 2 Trang 47

Theo chuẩn đặt tên thì tên lớp nên bắt đầu bằng kí tự hoa, các từ sau viết hoa đầu từ. Quy tắc đặt tên lớp giống như cách đặt tên biến, tên hàm. Thân của lớp sẽ nằm trong cặp ngoặc {}.

Thành phần được khai báo trong một lớp được gọi là “member” của lớp. Lớp SinhVien có bốn thành phần dữ liệu là họ tên, ngày sinh, giới tính và điểm. Trong c++ hay gọi thành phần này là “data member” hay các thuộc tính (attribute) hoặc trường dữ liệu (field).

Các thành phần này được khai báo sau nhãn public. Khi đó nó là những thành phần cơng cộng (public) của lớp SinhVien; có nghĩa là tất cả các thành phần bên trong hay bên ngoài lớp SinhVien đều có quyền truy cập hay chỉnh sửa được dữ liệu của lớp SinhVien.

Chú ý rằng SinhVien khơng phải là một đối tượng mà nó là một lớp đại diện cho các đối tượng cùng loại. Các biến được khai báo trong chương trình kiểu SinhVien được gọi là các đối tượng (object) hay thể hiện (instance) của lớp SinhVien. Ví dụ: File: Test.cpp #include"SinhVien.h" #include <iostream> void main() { SinhVien cSV1; SinhVien cSV2 = cSV1; cout << cSV1.hoTen; }

cSV1 và cSV2 là hai đối tượng, thể hiện của lớp SinhVien

Mỗi đối tượng có vùng nhớ riêng. Kích thước vùng nhớ của mỗi đối tượng có thể lớn hơn hoặc bằng tổng kích thước của các thuộc tính trong lớp, kích thước này phụ thuộc vào cấu trúc máy tính quy định cách sắp xếp dữ liệu trong vùng nhớ. Để kiểm tra kích thước bộ nhớ mà đối tượng chiếm ta sử dụng câu lệnh sau:

cout << sizeof(SinhVien);

Người sử dụng có thể sử dụng tốn tử (.) với một đối tượng để truy cập thành phần của đối tượng đó.

Tài liệu giảng dạy Kỹ Thuật Lập Trình 2 Trang 48

Hai đối tượng có thể gán cho nhau mà khơng cần sao chép từng thuộc tính của hai đối tượng:

SinhVien cSV1;

SinhVien cSV2 = cSV1;

Một ví dụ khác đơn giản về đối tượng tài khoản ngân hàng. Để xác định những thông tin cần thiết cho mỗi tài khoản là name, ID number, balance. Có thể định nghĩa lớp như sau:

File: Account.h class Account {

private:

string name;//Họ tên chủ tài khoản

int id;//So tai khoan double balance;// };

Các thành phần thuộc lớp Account được gán nhãn private. Nghĩa là chỉ những thành phần bên trong lớp Account mới truy cập được các thuộc tính name, id, double

Một phần của tài liệu Tài liệu giảng dạy kỹ thuật lập trình 2 (Trang 50 - 52)

Tải bản đầy đủ (PDF)

(143 trang)