我正在练习课程,我的任务是创建员工管理系统。我给了两个.txt文件。 One(details.txt)包含每个员工的详细信息,其中包含以下信息:ID,名称,DOB,SSN,部门和职位。该文件的示例如下所示:
5 ali 6/24/1988 126-42-6989支持助手
13 tim 2/10/1981 131-12-1034物流经理
另一个.txt(timelog.txt)将包含员工进入和退出时的每日日志。此文件的以下格式为:ID,日期,时钟和时钟输出时间。样品:
5 3/11 0800 1800
13 3/11 0830 1830
首先,我允许用户按ID,姓名,部门或职位搜索员工。这样做将显示所有员工信息(多名员工,如果他们具有相同的名称,职位或来自同一部门),并显示他们在公司工作的总小时数。
其次,将为用户提供另一个选项,以按ID号查找员工时间日志。这将显示该员工的整个时钟输入/退出历史记录以及每天的总工作小时数。
我打算通过ifstream读取.txt文件中的信息,并将它们存储为一个对象数组。我只是想知道我应该创建多少个类。我正在考虑2个班级 - 一个用于员工信息(来自details.txt),另一个用于时间日志(timelogs.txt)。我还应该创建其他课程吗?或者这两个课程是否足够?
答案 0 :(得分:3)
简短回答:至少两个。
答案很长:这取决于很多事情。特别是您可以识别为可重用的代码部分。
如果您要求尽可能多的课程可以完成您的任务,我会想到一个课程:
timelog.txt
的一行,可以计算当天工作所花费的小时/分钟数std::ifstream
正确的答案很可能介于两者之间。请记住,C ++是一种多范式语言,您可以在没有类的情况下执行某些操作。相反,它们可以在类似C的单元中的函数或一组函数中执行。这对于功能不共享公共数据(潜在属性)的一次性操作特别有用。