Bạn sẽ dễ dàng cài đặt các phép toán (operator) trong 1 class.
Ví dụ:
Cài đặt tương tự như hàm ảo, nhưng có 1 điều bạn nên chú ý: Hàm ảo cài đặt là hàm ảo không có thân hàm.
Ví dụ:
class phanso { int tu,mau; public: phanso(int t=0,int m=1):tu(t),mau(m){}; phanso operator +(phanso b) { ... }Nhưng nếu bạn xây dựng lớp hình: hình vuông, hình chữ nhật, hình tam giác... thì bạn sẽ cài đặt thế nào?
Cài đặt tương tự như hàm ảo, nhưng có 1 điều bạn nên chú ý: Hàm ảo cài đặt là hàm ảo không có thân hàm.
virtualVí dụ:<FunctionName> (parameters)=0;
#include#include using namespace std; //Định nghĩa các class
Lưu ý: Đôi lúc bạn tham chiếu tới những kiểu khác nhau mà nó chưa được định nghĩa (theo kiểu biên dịch từ trên xuống thì bạn nên định nghĩa nguyên mẫu class ở đầu chương trình.//class CPolygon; //class CRectangle; class CPolygon { protected: int width, height; public: void set_values (int a, int b) { width=a; height=b; } virtual int area() { return 0; } virtual bool operator < (CPolygon& A)=0; }; class CRectangle: public CPolygon { public: int area () { return (width * height); } bool operator < (CPolygon& A) { cout<<"Test CRectangle"; return area() set_values(3,4); b = new CTriangle(); b->set_values(7,7); if(*b < *a) cout<<"\nHe he"; else cout<<"\nHi hi"; cout<<"\n"; return EXIT_SUCCESS; }
Nhận xét
Đăng nhận xét