GiaoTrinhC++(27Jun21)

(Hoang2711) #1

Thiết kế trang Web


56 • Ông Văn Thông


Ví dụ: #include
using namespace std;
class nhanvien { // base class
protected: int luong ; // quyền truy cập protected
public: string tennv;
void setpay(int sotien) { luong = sotien; }
int getpay() { return luong; } };
class kythuat: public nhanvien { // derived class
public: int thuong; };
int main() {
kythuat ktOne; ktOne.tennv = "Bac Ba Phi";
ktOne.setpay(50000); ktOne.thuong = 15000;
cout << "Ten NV: " << ktOne.tennv << "\n";
cout << "Luong: " << ktOne.getpay() << "\n";
cout << "Thuong: " << ktOne.thuong ;
return 0; }


Kết quả:

Ten NV: Bac Ba Phi
Luong: 50000
Thuong: 15000

ĐA HÌNH C++ POLYMORPHISM


1. Polymorphism


Đa hình (polymorphism) có nghĩa là "nhiều hình thức", và nó xảy ra khi chúng ta có nhiều class
liên quan đến nhau bằng sự kế thừa. Bạn đã biết rằng kế thừa cho phép hưởng dụng các thuộc
tính và phương thức từ một class khác. Đa hình sử dụng các phương thức đó để thực hiện các
tác vụ khác nhau. Điều này cho phép chúng ta thực hiện một hành động duy nhất theo những
cách khác nhau.


Giả sử một class cơ sở gọi là raohang có một phương thức gọi là raolen(). Các người rao hàng có
thể là cô bán hột vịt lộn, hoặc em bé bán kem, người mua ve chai, hay anh xe ôm, và mỗi người
có lời rao khác nhau, nhưng cùng dùng phương thức raolen(). Vậy raolen() là phương thức đa
hình:


Ví dụ: #include
#include
using namespace std;
class raohang { // base class
public: void raolen() { cout << "Ai ăn hột vịt lộn không!\n"; } };
class carem: public raohang { // derived class
public: void raolen() { cout << "Cà rem cây cà rem gói đây!\n"; } };
class vechai: public raohang { // derived class
public: void raolen() { cout << "Ve chai đồ cũ bán không!\n"; } };
class xeom: public raohang { // derived class
public: void raolen() { cout << "Ai đi xe ôm không!\n"; } };

Free download pdf