欢迎光临散文网 会员登陆 & 注册

黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难

2021-08-04 17:48 作者:ISEKAI  | 我要投稿

看了这么久才发现原来有记笔记功能...

P143文件操作

C++文件操作头文件<fstream>

(file stream--文件流)

文件类型:

1.文本文件:以ASCII码形式存在计算机中

2.二进制文件

文件操作三大类:

1.ofstream:写操作

2.ifstream:读操作

3.fstream:可读可写

写文件:

1.包含头文件

2.创建流对象(文件输出流,文件输入流等

3.打开文件

4.写数据

5.关闭文件

打开方式:

ios::in 只读

ios::out 只写

ios::ate (at the end)文件指针指向文件尾

ios::trunc 先删除文件,再创造文件

ios::binary 二进制方式

打开方式可以配合使用,在打开方式之间用“|”(位或)隔开


一点想法:

感觉ofstream类和ifstream类的功能与fstream类重合了呀,只读和只写有点像常量的感觉,限制读写权限是担心会进行不必要的读写吗?

还好奥赛有教一点重定向的文件读写,书上说重定向不是很严格。确实,如果在重定向的文件里用while的条件语句进行文件的读写会没办法关闭和再重定向文件,这真是很奇怪的事情,明明都遇到EOF了不是吗?

还有就是文件类型,文件类型有很多吧,难道mp3,mp4之类的文件都归到二进制文件吗?


P148职工管理系统

1.需求分析:

用C++实现一个基于多态的职工管理系统


公司职工分三类:普通员工,经理,董事会(老板)

职工的属性有:姓名,编号,岗位,职责,(工资,加钱扣钱记录,绩点)

普通员工职责:完成经理任务

经理职责:完成董事会任务,可以下发任务给员工

老板职责:管理公司所有事务


管理系统需要实现的功能:

1.退出管理程序

2.增加职工信息(可批量添加)

3.显示职工信息

4.删除职工信息

5.修改职工信息

6.查找职工信息

7.给职工按一定规则排序

8.格式化管理系统(清空所有信息)


2.创建项目

3.创建管理类

管理类负责内容:

1.UI

2.对职工的增删查改

3.与文件的读写交互

创建管理类方法:

在头文件和源代码中分别创建h和cpp文件

头文件只写接口,对应的CPP写实现

4. 创建职工类



———————————————

想了想,感觉抄笔记效率太低了,以后就只写一点问题,感受和犯过的错误了。

  • 坑:基类的虚函数应写成纯虚函数或者空实现!不能写成声明的样子(即既没有=0,也没有函数体)


  • 问题:在类外实现构造函数时好像不能用this初始化列表,这是因为this指针是在函数体内才进行定向的吗?


  • P202 用swap压缩容器的空间:vector<int>(v).swap(v);这里相当于用拷贝构造实例化了一个匿名对象,这个匿名对象的大小和容量相等,都等于v的大小.然后交换,结束后释放匿名对象(即交换前的大容量的vector)。似乎会造成原本向量v的迭代器变成野指针

黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难的评论 (共 条)

分享到微博请遵守国家法律