《c++ primer》读书笔记4

原创 2004年07月15日 14:06:00

笔记范围:1.5<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

本节的内容不是很难,学过一点编程的人都会很容易接受,但是,我一直以来就有一种感觉。自己用的最多但又用的最糊涂的也就是i/o系统,很明显i/o实现了对计算机设备的直接操作。在c++里我们知道它是通过ios类的对象来完成的。从感觉上讲,远远不如c来的直接,明白。当然这样做的好处是大大简单了我们的操作,但是不幸的是这会给我们的理解造成一定的困难,下面我将提出自己疑问。

第一,      大家都知道,我们的io操作是通过三个对象来完成的。cincoutcerr。作者在描述的时候用了“绑定”这个词,很明显被抽象的数据类型和具体设备实现了完美的对接。但是我的问题是,从ADT的思路来说,这些对象封装了那许数据?提供那些操作?这些数据和接口是如何对设备进行控制的?很显然,以我们现在的知识很难回答这些问题。就算是自以为合理的估计也不能,但是这样的思考,有助于我们对类设计思维的熟悉,但是思考到此为止罢。不然我就误人子弟了。

第二,      还有一个问题,初学者也许会问,作者告诉我们coutcerr都可以用来输出。他们的区别一个是一般的输出,一个是输出错误信息。可是这样的解释并不能使我们这些好奇的人满意。于是我做了个恶作剧,改写了我们那个知名的”hello world!”

int main() {

             cerr<<”hello world!”<<endl;

             return 1;

          }

       事实证明 用户如果不看代码。他们不会知道自己看到的是个err。那么这两个对象的区别只是个习惯或约定吗?我们同样不能解释。把它留着罢,相信总会“悟”的

第三,      我想谈谈那个“endl”,在很多教材里把它等价于”/n”正确吗?no,你可以写下如下句子。

cout<<”aaa”

a=getchar();//.假设a已经定义

cout<<a;

VC6中你会发现输入输出的顺序乱了(刚才在VC++.NET 2003又恢复正常了、奇怪。因此不建议在c++中用c的东西),为什么呢?作者告诉我们endl除了/n的功能外还有个刷新的功能,刷新什么?看仔细点,刷新缓冲区。什么是缓冲区?哦。这个问题也许你需要一些别的知识,比如。《计算机组成原理》

关于文件的操作,与单文件非常类似,唯一要注意的是流进出的参照物、内存?or 文件?

笔记的最后,我还是要提醒大家。我提出了很多牛角尖的问题。只是对初学者的思考方法提出一些个人建议。对于这些问题本身有些并没有讨论价值。有些不是现在该解决的问题。在这节里你的任务其实很简单,搞清每个对象和运算符的作用。就是这样,c++之父把c++说成难学易用的语言,我们可以理解这句话的涵义。要不断的想起这句话,

《C++primer(第五版)》学习之路-第十一章:关联容器

【 声明:版权所有,转载请标明出处,请勿用于商业用途。  联系信箱:libin493073668@sina.com】 11.1 使用关联容器 1. 关联容器类型 按关键字有序保...
  • libin1105
  • libin1105
  • 2015年09月26日 12:28
  • 1485

C++ Primer中文版读书笔记

(注意,Lm 表示第 m 行,L-n 表示倒数第 n 行)■导读 p23原文:template T func( T p1, T p2, int p3 ) // ( T p1, T p2, int p3...
  • jaminwm
  • jaminwm
  • 2007年12月25日 20:04
  • 2431

【c++ primer】第九章读书笔记

第九章   内存模型和名称空间
  • fghbnmjkl1
  • fghbnmjkl1
  • 2017年03月08日 08:09
  • 117

C++ primer读书笔记(1)

写在前面的话:
  • u013457107
  • u013457107
  • 2014年05月02日 00:17
  • 458

《C++ Primer》读书笔记第十一章-1-关联容器概述

笔记会持续更新,有错误的地方欢迎指正,谢谢!前言:前面学的都是顺序容器,顺序容器中的元素是按它们在容器中的位置来保存和访问的。接下来这一章学习关联容器:关联容器中的元素是按关键字来保存和访问的。 ...
  • BillCYJ
  • BillCYJ
  • 2017年09月22日 16:47
  • 91

c++ primer 读书笔记十一

3.4迭代器 和指针不一样的是,获取迭代器不是使用取地址符,有迭代器的类型同时返回拥有返回迭代器的成员,比如这些类型都拥有名为begin和end的成员,其中begin成员负责指向第一个元素的迭代器 ...
  • sinat_37339643
  • sinat_37339643
  • 2018年01月26日 15:24
  • 14

C++ primer plus读书笔记(一)

这一系列的blog主要是对以前学过的C++的特点,以及面向对象的相关内容的总结。 面向对象的三大特征:封装、继承、多态。 访问控制原则: public:使用类对象的程序可以直接访问公有成员。...
  • u012927281
  • u012927281
  • 2016年08月17日 10:57
  • 307

【c++ primer读书笔记】【第11章】关联容器

1、关联容器类型 按关键字有序保存元素 map 关联数组:保存关键字-值对应 set 关键字既值,既只保存关键字的容器 multimap 关...
  • ruan875417
  • ruan875417
  • 2015年03月29日 17:00
  • 266

C++ Primer第四版(中文版) pdf下载

编辑推荐 《C++ Primer中文版(第4版)》对C++基本概念和技术全面而且权威的阐述,对现代C++编程风格的强调,使《C++ Primer中文版(第4版)》成为C++初学者的最佳指南;对于...
  • u012550652
  • u012550652
  • 2013年10月23日 23:08
  • 3340

C++ Primer 第四版中文完整版 和答案完整版

最近想再看一遍C++ Primer ,于是在网上找了第四版的电子版和习题答案 完整版的,现在传到CSDN上面供大家免费下载。希望能帮助到大家...... 本版本的电子版书籍和答案全部是完整版的。...
  • BBOOT
  • BBOOT
  • 2014年06月28日 15:12
  • 2323
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:《c++ primer》读书笔记4
举报原因:
原因补充:

(最多只允许输入30个字)