欢迎来到天天文库
浏览记录
ID:21030047
大小:121.00 KB
页数:9页
时间:2018-10-18
《程序设计教程--用c++语言编程》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《程序设计教程--用C++语言编程》第四次印刷的勘误表pIX.第17行错:8.3虚函数对:8.3消息(成员函数调用)的动态绑定p33.第18行错:上述操作符的含义是:如果“#=”代表上面的复合操作符,则a#=b按照a=a#b理解。对:上述操作符的含义是:如果“#=”代表上面的复合操作符,则a#=b按照a=a#(b)理解。p118.倒数第5行(注意格式对齐)错:{cout<2、采用一种较快的查找算法:折半查找(或称二分法)。对:由小到大排个序,则在查找时,可以采用一种较快的查找算法:折半查找(或称二分法查找)。p163.第13行错:当然,在上面的函数max中,也可以用“*x[i]”的形式访问数组元素。对:当然,在上面的函数max中,也可以用“x[i]”的形式访问数组元素。p170.第2个图错:paheada1a2...anNULL对:paheada1a2...anNULLp226.倒数第6行错:voidf(){......}voidg(inti){......}对:voidf(){h();......}voidg(inti){x=i;......}p251.第10行3、错:private;<成员说明表>用于给出在派生类中新定义的成员和对基类一些成员的重定义。对:private;<成员说明表>用于给出在派生类中新定义的成员,其中包括对基类一些成员的重定义(参见8.3.2节中的虚函数)。p251.倒数第16行错:(1)派生类除了拥有基类的所有成员(基类的构造函数和赋值操作符重载函数除外)外,也可以具有新的成员。例如,对于上面的派生类B,它除了拥有基类A的成员:x、y、f和g外,它还包含了新的成员z和h,对一个B类的对象,其内存安排和操作如下:对:(1)派生类除了拥有新定义的成员外,还包含了基类的所有成员(基类的构造函数和赋值操作符重载函数除外)。例如,对于上面的4、派生类B,它除了拥有新的成员z和h外,还包含了基类A的成员x、y、f和g。对B类的一个对象b,其内存安排和操作如下:p251.倒数第9行错:(2)派生类的定义用于描述派生类与基类的差别。派生类中可以给出新的成员,也可以对基类的成员进行重定义。如果在派生类中对基类的某个成员进行了重定义,则在派生类中对该成员的访问是针对派生类中重定义的成员。例如:对:(2)如果在派生类中定义了与基类成员同名的成员,则在派生类中对该名字的访问是指派生类中新定义的成员。例如:p252.第9行错:(3)派生类成员名的作用域嵌套在基类作用域中。对于基类的一个成员,如果派生类中没有定义与其同名的成员,则该成员名在派生类的作5、用域内可见,否则,该成员名在派生类的作用域内不直接可见,如果要使用之,必须用基类名受限。例如:对:(3)派生类成员名的作用域嵌套在基类作用域中。对于基类的一个成员,如果派生类中没有定义与其同名的成员,则该成员名在派生类的作用域内可见,否则,该成员名在派生类的作用域内不直接可见(被隐藏了,hidden),如果要使用之,必须用基类名受限。例如:p253.倒数第3行错:在派生类中定义新的成员或对基类的成员重定义时,往往需要用到基类的一些private成对:在派生类中定义新的成员或对基类的成员重定义时,往往需要用到基类的一些private成p255.第19行错:给基类对象的消息也能发给派生类对象,以及6、基类的对象标识可以标识派生类对象。例如,假对:给基类对象的消息也能发给派生类对象,以及在需要基类对象的地方可以用派生类对象去替代。例如,假p261.第1行错:8.3虚函数对:8.3消息(成员函数调用)的动态绑定p261.第7~11行,交换(2)和(3)的次序,并作一些文字修改错:(2)消息的多态。一个可以发送到基类对象的消息,也可以发送到派生类对象,从而可能会得到不同的解释。(3)对象标识的多态。基类的指针或引用可以指向基类对象,也可以指向或引用派生类对象,即一个对象标识符可以属于多种类型,可以标识多种对象。在对象标识符定义时指定的类型称为它的静态类型,而在运行时它实际标识的对象的类型称为它的7、动态类型。对:(2)对象标识的多态。基类的指针或引用可以指向或引用基类对象,也可以指向或引用派生类对象,即一个对象标识符可以属于多种类型,它可以标识多种对象。在对象标识符定义时指定的类型称为它的静态类型,而在运行时它实际标识的对象的类型称为它的动态类型。(3)消息的多态。一个可以发送到基类对象的消息,也可以发送到派生类对象,从而可能会得到不同的解释。p262.倒数第16~倒数11行(用新的段替换老
2、采用一种较快的查找算法:折半查找(或称二分法)。对:由小到大排个序,则在查找时,可以采用一种较快的查找算法:折半查找(或称二分法查找)。p163.第13行错:当然,在上面的函数max中,也可以用“*x[i]”的形式访问数组元素。对:当然,在上面的函数max中,也可以用“x[i]”的形式访问数组元素。p170.第2个图错:paheada1a2...anNULL对:paheada1a2...anNULLp226.倒数第6行错:voidf(){......}voidg(inti){......}对:voidf(){h();......}voidg(inti){x=i;......}p251.第10行
3、错:private;<成员说明表>用于给出在派生类中新定义的成员和对基类一些成员的重定义。对:private;<成员说明表>用于给出在派生类中新定义的成员,其中包括对基类一些成员的重定义(参见8.3.2节中的虚函数)。p251.倒数第16行错:(1)派生类除了拥有基类的所有成员(基类的构造函数和赋值操作符重载函数除外)外,也可以具有新的成员。例如,对于上面的派生类B,它除了拥有基类A的成员:x、y、f和g外,它还包含了新的成员z和h,对一个B类的对象,其内存安排和操作如下:对:(1)派生类除了拥有新定义的成员外,还包含了基类的所有成员(基类的构造函数和赋值操作符重载函数除外)。例如,对于上面的
4、派生类B,它除了拥有新的成员z和h外,还包含了基类A的成员x、y、f和g。对B类的一个对象b,其内存安排和操作如下:p251.倒数第9行错:(2)派生类的定义用于描述派生类与基类的差别。派生类中可以给出新的成员,也可以对基类的成员进行重定义。如果在派生类中对基类的某个成员进行了重定义,则在派生类中对该成员的访问是针对派生类中重定义的成员。例如:对:(2)如果在派生类中定义了与基类成员同名的成员,则在派生类中对该名字的访问是指派生类中新定义的成员。例如:p252.第9行错:(3)派生类成员名的作用域嵌套在基类作用域中。对于基类的一个成员,如果派生类中没有定义与其同名的成员,则该成员名在派生类的作
5、用域内可见,否则,该成员名在派生类的作用域内不直接可见,如果要使用之,必须用基类名受限。例如:对:(3)派生类成员名的作用域嵌套在基类作用域中。对于基类的一个成员,如果派生类中没有定义与其同名的成员,则该成员名在派生类的作用域内可见,否则,该成员名在派生类的作用域内不直接可见(被隐藏了,hidden),如果要使用之,必须用基类名受限。例如:p253.倒数第3行错:在派生类中定义新的成员或对基类的成员重定义时,往往需要用到基类的一些private成对:在派生类中定义新的成员或对基类的成员重定义时,往往需要用到基类的一些private成p255.第19行错:给基类对象的消息也能发给派生类对象,以及
6、基类的对象标识可以标识派生类对象。例如,假对:给基类对象的消息也能发给派生类对象,以及在需要基类对象的地方可以用派生类对象去替代。例如,假p261.第1行错:8.3虚函数对:8.3消息(成员函数调用)的动态绑定p261.第7~11行,交换(2)和(3)的次序,并作一些文字修改错:(2)消息的多态。一个可以发送到基类对象的消息,也可以发送到派生类对象,从而可能会得到不同的解释。(3)对象标识的多态。基类的指针或引用可以指向基类对象,也可以指向或引用派生类对象,即一个对象标识符可以属于多种类型,可以标识多种对象。在对象标识符定义时指定的类型称为它的静态类型,而在运行时它实际标识的对象的类型称为它的
7、动态类型。对:(2)对象标识的多态。基类的指针或引用可以指向或引用基类对象,也可以指向或引用派生类对象,即一个对象标识符可以属于多种类型,它可以标识多种对象。在对象标识符定义时指定的类型称为它的静态类型,而在运行时它实际标识的对象的类型称为它的动态类型。(3)消息的多态。一个可以发送到基类对象的消息,也可以发送到派生类对象,从而可能会得到不同的解释。p262.倒数第16~倒数11行(用新的段替换老
此文档下载收益归作者所有