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

Hướng đối tượng - Cài đặt phép toán

6 473 2
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Cài đặt phép toán
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài luận
Thành phố Hồ Chí Minh
Định dạng
Số trang 6
Dung lượng 87 KB

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

Nội dung

Hướng đối tượng - Cài đặt phép toán

Trang 1

Định nghĩa : Cho một dãy hữu hạn các tập

Một tác vụ trên bộ n các phần tử

cho kết quả là một phần tử

là một ánh xạ

Trong trường hợp mọi đều bằng nhau

ta gọi tác vụ đó là một phép toán Nếu

n=1 ta có phép toán một ngôi Nếu n=2 ta

có phép toán hai ngôi.

 1 2 

1

, , , n n i

i

e   E

1 1

i

    

i E

Trang 2

Có thể hiện thực phép toán dưới kí pháp

operation(e1,e2,…en)

Khi đó operation() có thể được quan niệm như

một hàm (function) và có thể được khai báo trong một class

Trong trường hợp phép toán là hai ngôi có thể

hiện thực bởi kí pháp (e1 op e2) hoặc phép toán một ngôi hiện thực bởi kí pháp (op e1) thì op được gọi là một toán tử (operator) Ví dụ:

3+2 (+ là phép toán 2 ngôi)

t*x (* là phép toán 2 ngôi)

p++ (++ là phép toán 1 ngôi - viết theo

kí pháp hậu tố)

Trang 3

toán trong C++

C++ có các phép toán được cài đặt sẳn như các phép toán số học dùng các toán tử +,-,*,/, v.v

Trong C++ phần lớn các toán tử sẳn có đều có thể được quá tải để thực hiện các phép toán cho các kiểu dữ liệu khác không phải là dữ liệu số

Chỉ có thể quá tải các toán tử đã tồn tại trong ngôn ngữ Không được phép dùng kí hiệu mới Không được phép định nghĩa lại các toán tử cho các kiểu dữ liệu cơ bản đã định nghĩa sẳn

Trang 4

Toán tử + được quá tải cho kiểu dữ liệu string (do người dùng định nghĩa)

III Phép toán là thành viên của lớp Toán tử được quá tải bởi từ khóa operator dưới dạng một khai báo hàm theo dạng thức:

return_type operator op (parameter list);

Ví dụ: class string {

char the_string[100];

string(char *init_string);

string operator+(string second_string);

}

Ví dụ

Trang 5

IV Các toán tử không thể được quá tải

viên của lớp (.*)

Trang 6

Các toán tử cho phép quá tải của

C++

+ - * / = < >

+= -= *= /=

<< >> <<= >>=

== != <= >=

++ % &

^ ! | ~

&= ^= |= &&

|| %= [] ()

new delete

Ngày đăng: 13/11/2012, 17:00

TỪ KHÓA LIÊN QUAN