1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài thảo luận lập trình hướng đối tượng quản lý nhân sự

40 50 1

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 40
Dung lượng 455,84 KB

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

Nội dung

TRƯỜNG ĐẠI HỌC THƯƠNG MẠI KHOA HỆ THỐNG THÔNG TIN KINH TẾ VÀ THƯƠNG MẠI ĐIỆN TỬ BÀI THẢO LUẬN NHÓM Học phần: Lập trình hướng đối tượng Đề tài thảo luận: Xác định và xây dựng một số lớp trên C++ phục vụ các chức năng cơ bản trong hệ thống thông tin quản lý nhân sự Nhóm thực hiện : Nhóm 1 Giảng viên : Th.s Cù Nguyên Giáp Lớp học phần : 2204INFO1931 Hà Nội, 2022 Mục lục Lời mở đầu, 7 A. Cơ sở lý thuyết 8 1. Lập trình hướng đối tượng 8 1.1 Lập trình tuyến tính 8 1.2 Lập trình hướng cấu trúc 8 1.3 Phương pháp lập trình hướng đối tượng 8 1.4 So sánh phương pháp lập trình hướng đối tượng với các phương pháp khác 9 2. Các khái niệm cơ bản trong OOP 11 2.1 Trừu tượng hóa dữ liệu 11 2.2 Đối tượng 11 2.3 Lớp đối tượng 11 2.4 Thuộc tính & Phương thức 11 3. Đối tượng và lớp trong C++ 12 3.1 Lớp 12 3.2 Hàm thiết lập và hủy bỏ 14 3.3 Các thành phần tĩnh (static) 16 3.4 Hàm bạn và lớp bạn 17 B. Xác định và xây dựng một số lớp trên C++ phục vụ các chức năng cơ bản trong hệ thống thông tin quản lý nhân sự 18 Chương 1: Bài toán 18 1. Bài toán: 18 2. Yêu cầu 18 3. Thiết kế sơ đồ các lớp 19 Chương 2: Thông tin nhân viên trong file NHANVIEN.txt 20 Chương 3: Chương trình code 27 3.1 Class date 27 3.2 Class NhanVien 28 3.3 Class NhanVienSX 30 3.4 Class NhanVienQL 31 3.5 Class NhanVienVP 32 3.6 Class CongTy 33 3.7 Hàm main 39 Lời cảm ơn, 40

Trang 1

TRƯỜNG ĐẠI HỌC THƯƠNG MẠI KHOA HỆ THỐNG THÔNG TIN KINH TẾ VÀ THƯƠNG MẠI ĐIỆN TỬ

BÀI THẢO LUẬN NHÓM

Học phần: Lập trình hướng đối tượng

Đề tài thảo luận: Xác định và xây dựng một số lớp trên C++ phục vụ các chức năng

cơ bản trong hệ thống thông tin quản lý nhân sự

Trang 2

I Thời gian: 20h ngày 28 tháng 1 năm 2022

II Địa điểm: phòng họp meet

III Thành phần tham gia:

1 Bùi Thị Lan Anh

2 Đặng Ngọc Anh

3 Lê Phương Anh

4 Nguyễn Hoàng Anh

5 Nguyễn Mai Anh

6 Nguyễn Phương Anh S1

7 Nguyễn Phương Anh S2

8 Nguyễn Thị Vân Anh

9 Trần Thị Tú Anh

10 Trần Tuấn Anh

IV.Nội dung

Thảo luận chọn ra nhóm trưởng và đề tài thảo luận

Cuộc họp kết thúc vào lúc 21 giờ cùng ngày

Người viết biên bảnBùi Thị Lan Anh

Cộng hòa xã hội chủ nghĩa Việt Nam

Trang 3

I Thời gian: 20h ngày 15 tháng 3 năm 2022

II Địa điểm: phòng họp meet

III Thành phần tham gia:

1 Bùi Thị Lan Anh

2 Đặng Ngọc Anh

3 Lê Phương Anh

4 Nguyễn Hoàng Anh

5 Nguyễn Mai Anh

6 Nguyễn Phương Anh S1

7 Nguyễn Phương Anh S2

8 Nguyễn Thị Vân Anh

9 Trần Thị Tú Anh

10 Trần Tuấn Anh

IV.Nội dung

Thảo luận về đề tài: Xác định và xây dựng một số lớp trên C++ phục vụ các chức năng

cơ bản trong hệ thống thông tin quản lý nhân sự Trao đổi ý kiến, mỗi người đưa ranhững góp ý của mình

Phân chia công việc và tiến hành làm thảo luận

Cuộc họp kết thúc vào lúc 21 giờ 30 phút cùng ngày

Người viết biên bảnBùi Thị Lan Anh

Cộng hòa xã hội chủ nghĩa Việt Nam

Trang 4

I Thời gian: 20h ngày 15 tháng 4 năm 2022

II Địa điểm: phòng họp meet

III Thành phần tham gia:

1 Bùi Thị Lan Anh

2 Đặng Ngọc Anh

3 Lê Phương Anh

4 Nguyễn Hoàng Anh

5 Nguyễn Mai Anh

6 Nguyễn Phương Anh S1

7 Nguyễn Phương Anh S2

8 Nguyễn Thị Vân Anh

9 Trần Thị Tú Anh

10 Trần Tuấn Anh

IV Nội dung

Thảo luận về đề tài: Xác định và xây dựng một số lớp trên C++ phục vụ các chứcnăng cơ bản trong hệ thống thông tin quản lý nhân sự Tổng hợp các phần code và tiếnhành chạy chương trình nhưng vẫn chưa ra được kết quả nhưng mong đợi

Các thành viên tiếp tục hoàn thiện bài

Cuộc họp kết thúc vào lúc 21 giờ 30 phút cùng ngày

Người viết biên bảnBùi Thị Lan Anh

Phân chia công việc

Trang 5

Đánh giá của thành viên

(thang 10)

Đánh giá của nhóm trưởng

(Thang 10)

1 Bùi Thị Lan Anh Xây dựng bài toán và tổng hợp code và làm

word

2 Đặng Ngọc Anh Phần class date và classNhanVien

3 Lê Phương Anh Phần class CongTy, hàm main

4 Nguyễn Hoàng Anh Phần class CongTy, hàm main

5 Nguyễn Mai Anh Phần class date và classNhanVien

6 Nguyễn Phương Anh

S1

Phần class date và classNhanVien

7 Nguyễn Phương AnhS3 Phần class CongTy, hàm main

8 Nguyễn Thị Vân Anh

Phần class NhanVienSX, NhanVienVP, NhanVienQL

9 Trần Thị Tú Anh Xây dựng thông tin NHANVIEN.txt

10 Trần Tuấn Anh

Phần class NhanVienSX, NhanVienVP, NhanVienQL

Mục lục

Trang 6

Lời mở đầu, 7

A Cơ sở lý thuyết 8

1 Lập trình hướng đối tượng 8

1.1 Lập trình tuyến tính 8

1.2 Lập trình hướng cấu trúc 8

1.3 Phương pháp lập trình hướng đối tượng 8

1.4 So sánh phương pháp lập trình hướng đối tượng với các phương pháp khác 9

2 Các khái niệm cơ bản trong OOP 11

2.1 Trừu tượng hóa dữ liệu 11

2.2 Đối tượng 11

2.3 Lớp đối tượng 11

2.4 Thuộc tính & Phương thức 11

3 Đối tượng và lớp trong C++ 12

3.1 Lớp 12

3.2 Hàm thiết lập và hủy bỏ 14

3.3 Các thành phần tĩnh (static) 16

3.4 Hàm bạn và lớp bạn 17

B Xác định và xây dựng một số lớp trên C++ phục vụ các chức năng cơ bản trong hệ thống thông tin quản lý nhân sự 18

Chương 1: Bài toán 18

1 Bài toán: 18

2 Yêu cầu 18

3 Thiết kế sơ đồ các lớp 19

Chương 2: Thông tin nhân viên trong file NHANVIEN.txt 20

Chương 3: Chương trình code 27

3.1 Class date 27

3.2 Class NhanVien 28

3.3 Class NhanVienSX 30

3.4 Class NhanVienQL 31

3.5 Class NhanVienVP 32

3.6 Class CongTy 33

3.7 Hàm main 39

Lời cảm ơn, 40

Trang 7

Lời mở đầu,

“Nhân sự” là tài sản quan trọng nhất của mỗi doanh nghiệp, vì thế cả trong và sau khủnghoảng, chúng ta có thể giảm chi phí lao động nhưng hạn chế tới mức thấp nhất việc cắtgiảm nhân sự” giáo sư ChrisBrewster nói Trong nền kinh tế thị trườnghiện nay, trước sựbiến động mạnh mẽ của môi trường kinh doanh, tính chất khốc liệt của sự cạnh tranh vànhu cầu đòi hỏi được đáp ứng ngày càng cao của nhân viên, tất cả những vấn đề này đã vàđang là sức ép lớn đối với doanh nghiệp Trong đó vấn đề quản trị nguồn nhân lực là mộttrong các yếu tố mang tính chất sống còn Quản lý nguồn nhân lực chính là giúp cho bảnthân bạn và doanh nghiệp của bạn đi đến thành công

Hệ thống quản lý nhân sự là nền tảng tổng hợp mọi chức năng hỗ trợ thực hiện các côngtác quản lý nhân sự bao gồm tuyển dụng, phát triển và đãi ngộ nhân sự Thay vì triển khaicông tác quản lý nhân sự theo cách thủ công, truyền thống, việc áp dụng hệ thống quản lýnhân sự khoa học theo những tiêu chuẩn thống nhất trong từng doanh nghiệp đã và đangmang đến một bộ máy nhân sự hiệu quả cao hơn rất nhiều Thông qua hệ thống này, côngtác quản lý nhân sự diễn ra nhanh, gọn, rõ ràng Từ đó: Tuyển dụng nhanh và đúng người,

bố trí đúng công việc Thúc đẩy, khích lệ nhân sự phát huy tối đa năng lực Đảm bảo tínhcông bằng, minh bạch trong vấn đề giải quyết quyền và lợi ích của người lao động

Nhận thức được tầm quan trọng của hệ thống quản lý nhân sự trong các doanh nghiệp nhưvậy nên hiện nay các doanh nghiệp đều chú trọng đến vấn đề này Sự thành công củadoanh nghiệp phụ thuộc vào tính hiệu quả của cách “quản lý con người” của bạn-bao gồm

cả cách quản lý chính bản thân, quản lý các phòng ban, các chức vụ nhân sự trong công

ty Cách quản lý, môi trường làm việc mà bạn đem lại cho nhân viên của mình và cáchtruyền đạt những giá trị và mục đích sẽ quyết định sự thành công của bạn cũng như thành

công của doanh nghiệp Do đó, nhóm 1 chúng em cùng xác định và xây dựng một số lớp trên C++ phục vụ các chức năng cơ bản trong hệ thống thông tin quản lý nhân sự

Trang 8

A Cơ sở lý thuyết

1 Lập trình hướng đối tượng

1.1 Lập trình tuyến tính

Chương trình được viết tuần tự với các câu lệnh được thực hiện từ đầu đến cuối

- Chương trình thường chỉ vài trăm dòng

- Phần mềm đơn giản

1.2 Lập trình hướng cấu trúc

Tư tưởng:

+ Chương trình tổ chức thành các chương trình con

+ Mỗi chương trình con đảm nhận xử lý một công việc nhỏ trong toàn bộ hệ thống+ Mỗi chương trình con này lại có thể chia thành các chương trình con nhỏ hơn

+ Quá trình phân chia như vậy tiếp tục cho đến khi nhận được các chương trình conđơn giản

 Tổ chức chương trình thành các chương trình con (hàm và thủ tục)

1.3 Phương pháp lập trình hướng đối tượng

Tư tưởng:

+ Phân tích bài toán thành các thực thể được gọi là các đối tượng (Object)  từ đóxây dựng các dữ liệu và các hàm (thao tác) thể hiện các đối tượng đó (methords) + Chương trình sẽ được tổ chức thành các đối tượng và sự tương tác giữa các đốitượng

Trang 9

Trong đó: đối tượng là sự kết hợp giữa các thuộc tính (dữ liệu) và phương thức (hàm)thao tác trên các thuộc tính đó

1.4 So sánh phương pháp lập trình hướng đối tượng với các phương pháp khác

- Đơn luồng: chỉ códuy nhất mộtluồng công việc vàcác công việcđược thực hiệntuần tự trongluồng đó

- Tập trung vào công việccần thực hiện (thuậttoán)

- Chương trình lớn đượcchia thành các hàm nhỏhơn

- Phần lớn các hàm sửdụng dữ liệu chung

- Các hàm (thủ tục)truyền thông tin chonhau thông qua cơ chếtruyền tham số

- Dữ liệu trong hệ thốngđược chuyển động từhàm này sang hàm khác

- Đóng gói chức năng (sửdụng hàm/ thủ tục màkhông cần biết nội dung

cụ thể)

- Chương trình được thiết

kế theo cách tiếp cận từtrên xuống (top- down)

- Đặt trọng tâm vào đốitượng, tập trung vàokhoanh vùng dữ liệuthay vì hàm

- Chương trình đượcchia thành các đốitượng

- Các đối tượng tácđộng và trao đổithông tin cho nhauthông qua các hàmvới cơ chế thông báo

- Đóng gói chức năng

và dữ liệu

- Các cấu trúc dữ liệuđược thiết kế để đặc

tả được các đối tượng

- Các hàm xác địnhtrên các vùng dữ liệucủa đối tượng đượcgắn với nhau trên cấutrúc dữ liệu đó

- Chương trình đượcthiết kế theo cách tiếpcận từ dưới lên

Ưu

điểm

Được ứng dụng vớicác chương trìnhđơn giản, dễ hiểu

Chương trình dễ hiểu, dễtheo dõi

Tư duy giải thuật rõ ràng

- Dữ liệu và các hàmmới có thể dễ dàng bổsung vào đối tượngnào đó khi cần thiết

 dễ nâng cấp thành

hệ thống lớn nhất

- Dữ liệu được bao bọc,che dấu và không chophép các hàm ngoạilai truy cập tự do mà

dữ liệu của một đốitượng chỉ có thể được

Trang 10

truy cập bởi chính cáchàm xác định trongđối tượng đó chương trình an toàn

- Mô hình được xâydựng gần với hệthống thực tế

- Thông qua nguyên lýthừa kế  loại bỏđoạn chương trình lặplại khi khai báo lớp

và mở rộng khả năng

sử dụng các lớp ngắn gọn, tiết kiệmthời gian

- Cách thiết kế đặttrọng tâm vào dữ liệu

 xây dựng mô hìnhchi tiết và cài đặt dễhơn

- Nếu thay đổi cấu trúc

dữ liệu dùng chung chomột số hàm thì phảithay đổi các hàm liênquan dữ liệu đó Khó

mở rộng chương trình

- Mô hình được xây dựngtheo cách tiếp cận nàykhông mô tả được đầy

đủ và trung thực hệthống trong thực tế(phân tích, thiết kế)

Không thích hợp đểxây dựng những phẩnmềm rất lớn

Trang 11

2 Các khái niệm cơ bản trong OOP

2.1 Trừu tượng hóa dữ liệu

Trừu tượng (Abstraction): Đây là tính trừu tượng đối tượng giống nhau có thể trừutượng hóa thành một lớp chúng ta có thể bỏ tính chất phức tạp của đối tượng bằngcách đưa ra các thuộc tính Kèm theo đó là phương thức cần thiết của đối tượng tronglập trình

Các kỹ thuật trừu tượng hóa

- Đóng gói ( Encapsulation): là tiến trình che dấu việc thực thi chi tiết đối tượng

- Ẩn thông tin (Information Hiding): Đóng gói  Không rõ thuộc tính lưu trữ hayphương thức được cài đặt như thế nào  được che giấu đi từ các đối tượng

- Tính thừa kế (Inheritance):

Thừa kế nghĩa là các phương thức và các thuộc tính được định nghĩa trong một lớp

có thể được thừa kế hoặc được sử dụng lại bởi lớp khác

Hệ thống hướng đối tượng cho phép các lớp được định nghĩa thừa kế từ các lớpkhác

- Tính đa hình (polymorphism): Đa hình “nhiều hình thức”, hành động cùng tên cóthể được thực hiện khác nhau đối với các đối tượng/ các lớp khác nhau

- Đối tượng (object) là một thực thể phần mềm bao bọc các thuộc tính và cácphương thức liên quan

- Thuộc tính được xác định bởi giá trị cụ thể gọi là thuộc tính thể hiện Một đốitượng cụ thể được gọi là một thể hiện

- Một đối tượng là một thể hiện cụ thể của một lớp

- Mỗi thể hiện có thể có những thuộc tính thể hiện khác nhau

2.4 Thuộc tính & Phương thức

- Thuộc tính (attribute): là dữ liệu trình bày các đặc điểm về một đối tượng

Trang 12

- Phương thức (method): có liên quan tới những thứ mà đối tượng có thể làm Mộtphương thức đáp ứng một chức năng tác động lên dữ liệu của đối tượng

- Thuộc tính lớp (class attribute) là một hạng mục dữ liệu liên kết với một lớp cụ thể

mà không liên kết với các thể hiện của lớp Nó được định nghĩa bên trong địnhnghĩa lớp và được chia sẻ bởi tất cả các thể hiện của lớp

- Phương thức lớp (class method) là một phương thức được triệu gọi mà không thamkhảo tới bất kỳ một đối tượng nào Tất cả các phương thức lớp ảnh hưởng đến toàn

bộ lớp chứ không ảnh hưởng đến một lớp riêng rẽ nào

- Thông điệp: là một lời yêu cầu một hoạt động bao gồm: đối tượng nhận thông điệp,tên của các phương thức thực hiện, các tham số mà phương thức cần

- Truyền thông điệp: một đối tượng triệu gọi một hay nhiều phương thức của đốitượng khác để yêu cầu thông tin

3 Đối tượng và lớp trong C++

3.1 Lớp

3.1.1 Khái niệm

Lợi ích của việc đóng gói:

- Nhìn từ bên ngoài, một đối tượng chỉ được biết tới bởi các mô tả về các phương thứccủa nó, cách cài đặt dữ liệu như thế nào không quan trọng

- Các phương thức đóng vai trò là giao diện bắt buộc giữa các đối tượng và người sử dụng

- Nâng cao chất lượng của chương trình

- Bảo trì chương trình thuận lợi hơn: một sự thay đổi cấu trúc của một đối tượng chỉ ảnhhưởng đến bản thân đối tượng, người sử dụng đối tượng ko cần biết sự thay đổi này (vớilập trình cấu trúc thì người sử dụng phải tự quản lý sự thay đổi này)

- Các thông điệp gửi tới đối tượng nào sẽ gắn chặt với đối tượng đó và chỉ đối tượng nàonhận được thông điệp(message) mới phải thực hiện theo thông điệp đó

Trang 13

< Định nghĩa của các hàm thành phần có thể được định nghĩa bên trong khai báo hoặckhông >

3.1.3 Đối tượng

* Tạo đối tượng:

<tên lớp> <tên đối tượng>; // khai báo một đối tượng

- Vùng nhớ được cấp phát cho một biến kiểu lớp sẽ cho một khung của đối tượng baogồm dữ liệu là các thể hiện cụ thể của các mô tả dữ liệu trong khai báo lớp cùng với cácthông điệp gửi tới các hàm thành phần

- Mỗi đối tượng sở hữu một tập các biến tương ứng với tên và kiểu của các thành phần dữliệu định nghĩa trong lớp Chúng là các biến thể hiện của đối tượng

* Lớp: là một kiểu dữ liệu do đó có thể khai báo con trỏ hay tham chiếu đến một đối

tượng thuộc lớp và có thể truy nhập gián tiếp đến đối tượng

* Nhưng con trỏ và tham chiếu không phải là một thể hiện của lớp

* Khởi tạo & gán các đối tượng:

Có thể thực hiện phép gán giữa hai đối tượng cùng lớp

Trang 14

Không thể dùng trực tiếp các lớp để khai báo kiểu thành phần dữ liệu thuộc vào bản thânlớp đang được định nghĩa Tuy nhiên, có thể dùng con trỏ hoặc tham chiếu đến các đốitượng của chính lớp đó

Không thể khai báo và khởi đầu giá trị cho các thành phần dữ liệu

Hàm thành phần:

Hàm được khai báo trong định nghĩa lớp được gọi là hàm thành phần

Các hàm thành phần có thể truy nhập đến các thành phần dữ liệu và các hàm thành phầnkhác trong lớp

Sử dụng đối tượng như tham số của hàm thành phần:

Truy nhập đến các thành phần private trong đối tượng:Hàm thành phần có quyền truynhập đến các thành phần private của đối tượng gọi nó

Truy nhập đến các thành phần private trong các tham số là đối tượng truyền cho hàmthành phần: Hàm thành phần có quyền truy nhập đến tất cả các thành phần private của cácđối tượng, tham chiếu đối tượng hay con trỏ đối tượng có cùng kiểu lớp khi được dùng làtham số hình thức của nó

Con trỏ this:

Từ khoá this trong định nghĩa của các hàm thành phần lớp dùng để xác định địa chỉ củađối tượng dùng làm tham số ngầm định cho hàm thành phần Con trỏ this tham chiếu đếnđối tượng đang gọi hàm thành phần

3.1.5 Phạm vi lớp và cách truy xuất

Trong định nghĩa lớp ta có thể xác định khả năng truy xuất thành phần của một lớp nào đó

từ bên ngoài phạm vi lớp

Private và public là các từ khoá xác định thuộc tính truy xuất Mọi thành phần được liệt

kê trong phần public đều có thể truy xuất trong bất kỳ hàm nào Những thành phần liệt kêtrong phần private chỉ được truy xuất bên trong phạm vi lớp

Hàm inline:

Cải thiện tốc độ thực thi

Tốn bộ nhớ (dành cho mã lệnh) khi thực thi

3.2 Hàm thiết lập và hủy bỏ

3.2.1 Hàm thiết lập

Chức năng của hàm thiết lập

Khởi tạo các giá trị thành phần dữ liệu của đối tượng, xin cấp phát bộ nhớ cho các thànhphần dữ liệu động

Trang 15

Một số đặc điểm quan trọng của hàm thiết lập

1 Hàm thiết lập có cùng tên với tên của lớp

2 Hàm thiết lập phải có thuộc tính public

3 Hàm thiết lập không có giá trị trả về

4 Có thể có nhiều hàm thiết lập trong cùng một lớp

5 Khi một lớp có nhiều hàm thiết lập, việc tạo các đối tượng phải kèm theo các tham sốphù hợp với một trong số các hàm thiết lập đã khai báo

6 Hàm thiết lập có thể được khai báo với các tham số có giá trị ngầm định

Hàm thiết lập ngầm định

Do chương trình dịch cung cấp khi trong lớp không định nghĩa hàm thiết lập nào (khônglàm gì cả)

Con trỏ đối tượng

Khai báo: point *ptr, p;

Nhận giá trị là địa chỉ của các đối tượng có cùng kiểu lớp: ptr=&p

Cách gọi: ptr->move(1,1)

Cấp phát ô nhớ new: ptr=new point(5,10) // gọi hàm thiết lập

Tham chiếu đối tượng

Tên của hàm huỷ bỏ bắt đầu bằng ~ theo sau là tên của lớp tương ứng

Hàm huỷ bỏ phải có thuộc tính public

Hàm huỷ bỏ không có tham số, mỗi lớp chỉ có một hàm huỷ bỏ

Trang 16

Khi không định nghĩa hàm huỷ bỏ chương trình dịch tự động sản sinh một hàm huỷ bỏngầm định

Hàm huỷ bỏ không có giá trị trả về

3.2.3 Hàm thiết lập sao chép và toán tử gán

Các tính chất

Khởi tạo một đối tượng bằng việc khởi tạo nó từ một đối tượngcùng lớp, mà đã được tạotrước đó

Hàm thiết lập sao chép được sử dụng để:

Khởi tạo một đối tượng từ đối tượng khác với cùng kiểu

Sao chép một đối tượng để truyền nó như là một tham số tới một hàm

Sao chép một đối tượng để trả về nó từ một hàm

Cú pháp:

ten_lop (const ten_lop &obj) {

// phan than cua constructor

Thành phần tĩnh chiếm giữ vùng nhớ ngay cả khi không khai báo bất kỳ đối tượng nào

3.3.2 Khai báo thành phần dữ liệu tĩnh

Cấu trúc khai báo:

Trang 17

3.3.3 Hàm thành phần tĩnh

Hàm được khai báo bắt đầu bằng static được gọi là hàm thành phần tĩnh được

Hàm thành phần tĩnh có thể được gọi cho dù có khai báo đối tượng của lớp đó hay không

Khi định nghĩa lớp có thể khai báo các hàm bạn của lớp

Khai báo hàm bạn cho phép hàm truy nhập đến các thành phần private của lớp giống nhưcác hàm thành phần của lớp đó

Trang 18

B Xác định và xây dựng một số lớp trên C++ phục vụ các chức năng cơ bản trong

hệ thống thông tin quản lý nhân sự

Chương 1: Bài toán

- Lương của nhân viên được tính như sau:

+ Đối với nhân viên sản xuất: Lương=lương căn bản * hệ số lương + tiền tăng ca

+ Đối nhân viên văn phòng: lương = lương căn bản * hệ số lương + tiền thưởng thêm+ Đối với nhân viên quản lý: lương= Lương căn bản* hệ số lương + tiền thưởng thêm

- Định dạng file NHANVIEN.TXT như sau:

Dòng đầu tiên chứa số lượng nhân viên trong công ty

Các dòng tiếp theo mỗi dòng là thông tin của từng nhân viên

2 Yêu cầu

1) Đọc thông tin nhân viên từ file NHANVIEN.txt

2) Tính lương và xuất thông tin nhân viên

3) Thêm thông tin nhân viên sản xuất

4) Thêm thông tin nhân viên quản lý

5) Thêm thông tin nhân viên văn phòng

6) Tìm kiếm thông tin nhân viên bằng mã nhân viên

7) Xóa thông tin nhân viên

8) Thông kê lương

Trang 19

3 Thiết kế sơ đồ các lớp

Trang 20

Chương 2: Thông tin nhân viên trong file NHANVIEN.txt

Ngày đăng: 23/05/2022, 16:39

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w