《c++ primer》读书笔记7

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

笔记范围:2.4

 

在上一节中作者带着我们初步建立一个class。正如作者自己所说:它能满足一些用户的需要,但是我们都知道我们的世界是多元的。当然需求也就会分不同的层次,但是生产的各类资源都极其有限,因此对工作效率的追求就成了我们这个时代技术发展的主要目标。

对于编程工作来说。效率主要来自代码的重用性。因为计算机硬件技术的发展成果,可以让程序员合理的忽视一些代码执行效率的考虑(并非完全忽视)。对于代码的重用性,根据作者的描述,我想把他理解为两个方面的努力,以方法(函数)的调用来划分。

在调用者这一端。我们希望写下的一句代码,由计算机自己决定其代码的具体实现方法。正如书上所写的,当我们写下:

int x = max( a, b );

我们希望计算机自己根据ab的数据类型来决定具体该调用那个max()实例。在就是重载。(其实这是上节的内容。但我自己觉得把它放到这里来总结更有利理解其作用和本质)

而在被调用的一端。我们一方面希望自己的代码能被不同的程序调用,另一方面我们也希望自己代码能根据被调用端的具体情况做出相应的反应,这两个方面都造就了伟大的技术。前者导致了oo理论的诞生,后者引出了泛型设计思想。

终于看到了oo,呵呵。在高兴之余,发现oo并没有想象的那么复杂,那么神秘。是他本身就不难?no,不是这样的,这完全归功于我们伟大的作者,他让我们从一开始就走对了路,从技术产生的根源出发。更容易理技术的本质涵义。我们会惊讶的发现原来如此,正如下面的例子:

1.     同类的不同对象方法具体实现细节不同?ok,虚函数应运而生。

2.     想简单的加入几项功能形成另一相关的classok,继承机制就是为了这个。

3.     如果还想新类博采各类之长。多继承。

可以看到,在这种思想下,很多难以理解的东西。就变的简单多了。

当然,在方便了编程方式的同时我们不要忘记这些方便都是,放弃运行效率为代价的。有时候我们不得不回过头来,考虑一下这些麻烦的问题。作者也提供了一些思考的方向,如。inline技术等等,但是正如上面所说,这些不是最重要的,

最后,我想说明下。从2.3节开始一直到本章结束,这里所有的内容都是值得玩味的。每次重读都会有不同的感受。  强烈建议在以后的学习中要不断的回头读这些内容,你会发现这样做的必要性,正如我在这里回避了代码细节级的技术。

C++Primer第五版 8.2.1节练习

练习8.4:编写函数,以读模式打开一个文件,将其内容读入到一个string的vector中,将每一行作为一个独立的元素存于vector中。 答:见 练习8.4.cpp练习8.5:重写上面的程序,将每...
  • fengzhanghao23
  • fengzhanghao23
  • 2015年09月17日 07:23
  • 1340

C++ Primer学习总结 第7章 类

第7章 类 1.    引入const成员函数(C++ Primer P231-232) C++类的常量对象是无法调用非const成员函数的,如果想让常量对象调用某个成员函数,必须声明...
  • u013480600
  • u013480600
  • 2015年03月07日 01:02
  • 1567

《Android开发精要》读书笔记——Android的系统架构

按照功能结构和面向人群进行划分 应用部分:包含在Android设备上运行的所有应用,它们是Android系统中直接面向用户的部分。 核心部分:Android系统中核心的功能实现,包括应用框架、核心类...
  • gengzhikui1992
  • gengzhikui1992
  • 2016年02月29日 17:05
  • 1312

C++ primer读书笔记7-复制控制

1 复制构造函数,赋值操作符,析构函数 这三者都是编译器会自动提供的函数,其中复制构造函数,赋值操作符是如果你没有自己编写,那么编译器就会提供。析构函数是不 管自己有没有实现,编译器都会提...
  • zhuhuangtianzi
  • zhuhuangtianzi
  • 2014年04月06日 00:06
  • 944

C++ Primer 读书笔记(7)

函数 函数的定义you
  • u013457107
  • u013457107
  • 2014年05月15日 20:59
  • 393

读书笔记:C++ primer 5th edition--chapter7.类

part1.基本用法 1.const 成员函数示例代码 string Sales_data::isbn (const Sales_data *const this){ return this->isb...
  • lebula
  • lebula
  • 2016年10月07日 00:04
  • 264

《C++ Primer第五版》读书笔记(7)--SEQUENTIAL CONTAINERS

SEQUENTIAL CONTAINERS:vector,deque,list,forward_list,array,string and three sequential container ada...
  • totuswhf
  • totuswhf
  • 2014年02月24日 17:15
  • 1094

《C++_Primer》MSDN读书笔记

  • 2013年11月07日 10:42
  • 204KB
  • 下载

C++Primer(4ed)读书笔记

  • 2008年08月24日 11:03
  • 740KB
  • 下载

《C++ Primer》读书笔记目录

目录:笔记会持续更新,有错误的地方欢迎指正,谢谢!第I部分 C++基础第一章:开始第二章:变量和基本类型-基本内置类型和变量第二章:变量和基本类型-复合类型和const限定符第二章:变量和基本类型...
  • BillCYJ
  • BillCYJ
  • 2017年12月27日 17:39
  • 441
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:《c++ primer》读书笔记7
举报原因:
原因补充:

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