Tải bản đầy đủ (.pdf) (2 trang)

Danh sách một số lớp được định nghĩa trong c++

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (71.03 KB, 2 trang )

Danh sách một số lớp được định nghĩa trong C++

Danh sách một số lớp được
định nghĩa trong C++
Bởi:
Đoàn Văn Ban
Lớp ThanhToan
class ThanhToan{ private: float tongSoTien; public:
ThanhToan(float soTien){ tongSoTien = soTien; } float
getAmount(){return tongSoTien;} };
Lớp MoTaMathang
#include <string.h> public class MoTaMatHang{ private: int
upc = 0; float giaBan = 0.0; String moTa = ""; public:
MoTaMatHang(int ma, float p, String mt){ upc = ma; giaBan
= p; strcpy(moTa, mt); } MoTaMatHang(int ma, float p,
String mt){ upc = 0; giaBan = 0; strcpy(moTa, ""); } int
getUPC(){return upc;} float getPrice(){return giaBan;}
String getDescrip(){return moTa;} };
Lớp DanhMucMatHang
#define N 100 public class DanhMucMatHang{ private:
MoTaMatHang danhSachMH[N]; public: DanhMucMatHang(){
for(inh k = 0; k < N; k++) danhSachMH[k] = new
MoTaMatHang(); } MoTaMatHang find(int upc){ for(k = 0; k <
N; k++) if (danhSachMH[k].getUPC() == upc) return
danhSachMH[k]; } };
Lớp DongBanHang
class DongBanHang{ private: int soLuong; MoTaMatHang moTa;
public: DongBanHang(MoTaMatHang mt, int n){ moTa = mt;

1/2



Danh sách một số lớp được định nghĩa trong C++

soLuong = n; } float subtotal(){ return soLuong *
moTa.getPrice(); } };
Lớp PhienBanHang
#define M 20 class PhienBanHang{ private: DongBanHang
danhSachBan[M]; Date ngayBan;// Kiểu ngày/tháng/năm Time
gioBan;// Kiểu giờ/phút/giây int soDong = 0; int
isComplete = 0;// false ThanhToan traTien; public:
getBalance(){ return traTien.getAmount() - total(); } void
becomeComplete(){isComplete = 1;} int isComplete() {return
isComplete;} void makeLineItem(MoTaMatHang mt, int sl){
lineItem[soDong++]= new DongBanHang(mt, sl); } float
total(){ float t = 0.; for (int k = 0; k < soDong; k++) t
+= lineItem[k].subtotal(); return t; } void
makePayment(float soTien){ traTien = new
ThanhToan(soTien); } };
Lớp HBH
class HBH{ private: DanhMucMatHang catalog; PhienBanHang
banHang; public: HBH(DanhMucMatHang danhMuc){ catalog =
danhMuc;} void endSale(){ banHang.becomeComplete();} void
enterItems(int upc, int soLuong){ if (isNewSale(){ banHang
= new PhienBanHang(); } MoTaMatHang mt =
catalog.find(upc); banHang.makeLineItem(mt, soLuong); }
void makePayment(soTien){ banHang.makePayment(soTien)} int
isNewSale(){ return (banHang == null) ||
(banHang.isComplete()); } };
Lớp CuaHang
class CuaHang{ private: DanhMucMatHang dm = new

DanhMucMatHang(); HBH post = new HBH(dm); public: HBH
getPOST() {return post;} };
Tương tự, dễ dàng định nghĩa cho tất cả các lớp khác của hệ thống HBH.

2/2



×